题目链接Link
我的代码:
#include <iostream>
#include <cstdio>
#include <algorithm>
#include <cstring>
using namespace std;
string s;
long long n,a[100005],cnt,d[100005];
int main()
{
cin>>n>>s;
for(long long i=0;i<n;i++)
{
if(s[i]=='0')
{
a[i+1]=0;
}
if(s[i]=='1')
{
a[i+1]=1;
}
}
for(long long i=1;i<=n-1;i++)
{
if(a[i]==1)
{
for(long long j=i+1;j<=n;j++)
{
if(a[j]==1)
{
cnt++;
d[cnt]=j-i;
break;
}
}
}
}
sort(d+1,d+cnt+1);
cout<<max(d[cnt]/3,d[cnt-1]/2)<<endl;
return 0;
}
在这里可以提交: Link