题目链接:http://2050.acmclub.cn/contests/contest_showproblem.php?pid=1001&cid=3
题目意思,很明确就是找连续的且完整的2050,因为数据很大,采用字符处理。2050 四个字符,对于输入的 字符进行检查,如果字符长度对4取模等于0,就开始检查2050字符是否完整 ,取模不等于0直接输出No.数据的存储可以用string或者数组。
#include<bits/stdc++.h>
using namespace std;
string a;
int main()
{
int n,cnt=0,flag=0,num=0;
cin>>n;
while(n--)
{
flag=0,cnt=0,num=0;
cin>>a;
int len=a.length();
// cout<<len<<endl;
if(len%4==0)
{
for(int i=1;i<=len/4;i++)
{
if(a[cnt]=='2' && a[cnt+1]=='0' && a[cnt+2]=='5' && a[cnt+3]=='0' )
{
num++;
}
else
{
flag=1;
break;
}
cnt=cnt+4;
}
if(num==len/4 && flag==0)
{
cout<<"Yes"<<endl;
}
else
{
cout<<"No"<<endl;
}
}
else
{
cout<<"No"<<endl;
}
a.clear();
}
return 0;
}