U5723.01串
普及-
通过率:0%
时间限制:1.00s
内存限制:128MB
题目描述
有 n 个 01 串 si (1≤i≤n),你可以无限制反转 si 的任意子区间(当然你可以不反转),使得 f(si) 最大化。问反转后的 f(si) 是多少?
f(s) 的含义:求 s 中的所有只包含 0 的子串中最大长度。
输入格式
共 n+1 行输入。
第一行输入一个整数 n。
第 2 ~ n+1 行,令 i→ 行数 −1,输入 si。
输出格式
共 n 行,每 i 行输出 si 反转后的 f(si)。
输入输出样例
输入#1
1 0101
输出#1
2
输入#2
1 1001
输出#2
2
说明/提示
样例 1 解释:其中有一种反转的方法是将 10
反转,变成 0011
,check(s)=2。
样例 2 解释:不用反转,check(s)=2。
对于 5% 的数据,保证 ∣s∣≤2。
对于 20% 的数据,保证 ∣s∣≤10。
对于另外 5% 的数据,保证 s 字符串中只包含 0。
对于 100% 的数据,保证 1≤n≤102,∣s∣≤5×103。
∣s∣ 的意思是字符串 s 的长度。
这个题是出题人在公交车上想出来的。