#L6211. 「美团 CodeM 决赛」elimination
「美团 CodeM 决赛」elimination
题目描述:
有一个长为 的 01 串 ,有两个老哥老 和老 ,他们会按照某种方式不断修改这个 01 串。
每一步的流程如下(假设这个串当前的长度为 ):
- 老 会去掉当前 01 串的第一个字符,得到一个长为 的 01 串。
- 老 会去掉当前 01 串的最后一个字符,也得到一个长为 的 01 串。
- 把这个串变成老 和老 得到的串的 xor(按位异或)。
比如当前的串是 ,老 会得到 ,老 会得到 ,xor 得到 。
问经过多少步,这个 01 串不包含字符 。
如果这个 01 串一直有 直到变成空串,输出 。
01 串初始至少有一个 。
输入格式
多组数据,请一直读到文件结束为止。
每组数据一行,一个 01 串。
输出格式
每组数据一行,输出一个答案。
样例
输入
00110
输出
3
解释
第一步:
开始时的串是 ;
老 得到的串是 ;
老 得到的串是 ;
xor 后得到的串是 。
第二步:
开始时的串是 ;
老 得到的串是 ;
老 得到的串是 ;
xor 后得到的串是 。
第三步:
开始时的串是 ;
老 得到的串是 ;
老 得到的串是 ;
xor 后得到的串是 。
三步之后这个串全部变成 ,所以答案是 。
数据范围与提示
对于所有每个测试点的任何一组数据:
- 数据组数不多于 组;
- ;
- 一个测试点的串总长可能很长(不超过 ),请大家注意读入的方式。