记录编号 47603 评测结果 AAAAAAAAAAAAAAAAAAAA
题目名称 [東方S3] 比那名居天子 最终得分 100
用户昵称 GravatarTruth.Cirno 是否通过 通过
代码语言 C++ 运行时间 0.023 s
提交时间 2012-11-02 14:55:34 内存使用 4.01 MiB
显示代码纯文本
#include <iostream>
#include <cstdio>
#include <cstdlib>
using namespace std;
 
char str[500005];
bool a[500005];
 
int main(void)
{
	freopen("tenshi.in","r",stdin);
	freopen("tenshi.out","w",stdout);
	int i,n,k,kt,l,r,mid;
	bool una;
	scanf("%d %d\n%s\n",&n,&k,&str);
	for (i=0;i<n;i++)
		a[i+1]=str[i]-'0';
	l=0;
	r=n;
	mid=n/2;
	while (l<r)
	{
		una=false;
		kt=k;
		for (i=1;i<=n;)
		{
			if (a[i]==1)
			{
				i+=mid;
				kt--;
				if (kt<0)
				{
					una=true;
					break;
				}
			}
			else
				i++;
		}
		if (una)
			l=mid+1;
		else
			r=mid;
		mid=(l+r)/2;
	}
	printf("%d\n",mid);
	return(0);
}