#P2541. Binary Witch

    ID: 1542 传统题 1000ms 256MiB 尝试: 4 已通过: 1 难度: 10 上传者: 标签>动态规划状压DP字符串哈希和哈希表Northeastern Europe 2000Far-Eastern Subregion

Binary Witch

描述

从前,在数字森林的寂静深处住着一位二进制女巫。她能预测天气,告诉你未来某一天是雨天还是晴天。

她的魔法基于以下古老规则:设a1,a2,,aNa_1, a_2, \ldots, a_N为一个二进制数字序列,其中ai=0a_i = 0表示第ii天是雨天,ai=1a_i = 1表示是晴天。为了预测第N+1N+1天的天气,考虑由最后tt个元素组成的tt-后缀aNt+1,aNt+2,,aNa_{N-t+1}, a_{N-t+2}, \ldots, a_N。如果这个后缀在位置Nt+1N-t+1之前出现过(即存在某个kNtk \leq N-t,使得$a_k = a_{N-t+1}, a_{k+1} = a_{N-t+2}, \ldots, a_{k+t-1} = a_N$),则预测值为ak+ta_{k+t}

如果有多个tt-后缀匹配,则选择最右边(kk最大)的那个。因此,为了做出预测,她会依次尝试tt-后缀,从t=13,12,,1t = 13, 12, \ldots, 1,并在第一次成功预测时停止。如果没有任何后缀匹配,则预测为雨天("0""0")。如果需要预测多天的天气,则假设之前的所有预测都是正确的。因此,如果第一个预测值为bb,那么第N+2N+2天的预测将基于N+1N+1天的序列,其中aN+1=ba_{N+1} = b

由于女巫早已被烧死,你的任务是编写一个程序来完成她的神秘工作。

输入

输入文件的第一行包含两个整数NN1N10000001 \leq N \leq 1000000)和LL1L10001 \leq L \leq 1000),用空格分隔。第二行是一个由NN个字符"0""0""1""1"组成的字符串。

输出

输出文件应包含一个由LL个字符组成的字符串,表示第N+1,N+2,,N+LN+1, N+2, \ldots, N+L天的预测结果。

示例输入1

10 7
1101110010

示例输出1

0100100

来源

20002000年的东北欧,远东次区域