luogu#P5640. 【CSGRound2】逐梦者的初心

【CSGRound2】逐梦者的初心

背景

注意:本题时限修改至 250ms,并且数据进行大幅度加强。本题强制开启 O2 优化,并且不再重测,请大家自己重新提交。

由于 Y 校的老师非常毒瘤,要求 zhouwc 在 csp 考前最后3天参加期中考,zhouwc 非常生气,决定消极考试,以涂完卡但全错为目标。现在 retcarizy 看 zhouwc 太可怜了,想要帮 zhouwc 解决一个问题,但他自己又太忙了,咕咕咕,于是就把问题甩给了你。

题目描述

给你一个长度为 nn 的字符串 SS

mm 个操作,保证 mnm\le n

你还有一个字符串 TT,刚开始为空。

共有两种操作。

第一种操作:

在字符串 TT 的末尾加上一个字符。

第二种操作:

在字符串 TT 的开头加上一个字符。

每次操作完成后要求输出有几个 l[1,T]l \in [1,|T|] 满足以下条件:

对于 i[1,l]\forall i \in [1,l]TTl+iSiT_{|T|-l+i} \ne S_{i}

Tip:字符串下标从 11 开始。T|T| 表示 TT 的长度。

输入格式

第一行两个正整数 n,mn,m

第二行 nn 个正整数,用空格隔开,第 ii 个整数表示 SiS_i

接下来 mm 行,每行两个数字 opt,chopt,chopt=0opt=0 表示在 TT 的末尾加一个字符 chchopt=1opt=1 表示在 TT 的开头加一个字符 chch

输出格式

mm 行,每行一个非负整数表示第 mm 操作后的输出。

10 3
1 2 3 1 2 3 2 3 2 3
0 1
1 2
0 3
0
1
1

提示

注意:本题采用捆绑测试,只有当你通过一个 subtask 的所有点后,你才能拿到这个 subtask 的分数。

对于所有的数据 $n \leq 10^6,m \leq 3.3333 \times 10^4,|\Sigma|\leq10^3,S_i \in [1,|\Sigma|]$。(Σ\Sigma 表示字符集)

subtask1(17%17\%):m333m \leq 333

subtask2(33%33\%):m3333m \leq 3333

subtask3(20%20\%):Σ2|\Sigma|\leq2

subtask4(30%30\%):无特殊条件。

样例解释:

第一次操作后,T=1T=\texttt1,

l=1l=1T1=S1T_1=S_1,所以答案为 00

第二次操作后,T=21T=\texttt{21}

l=1l=1 时,T2=S1T_2=S_1

l=2l=2 时,T1S1T_1\ne S_1T2S2T_2\ne S_2,所以答案为 11

第三次操作后,T=213T=\texttt{213}

l=1l=1 时,T3S1T_3\ne S_1

l=2l=2 时,T2=S1T_2=S_1

l=3l=3 时,T3=S3T_3=S_3,所以答案为 11