Problem Description
来自世界各地的年青人在 https://2050.org.cn 握手团聚, 他们是航空航天的新生代,编程大赛的优胜者,35岁以下的创新者,科技公司的创始人,展望未来的科学家,天马行空的艺术家...... TA们期待在这里与所有人分享交流,给彼此灵感,给未来答案。
我们想要用10个题目,大声喊出年青人的声音。我们希望和大家一起用技术创造一个更好的2050。
第一道题目,我们来玩一个数字游戏。
给出一个数字 n,我们想知道 n 是不是若干个 2050 依次拼接起来的。
Input
第一行一个正整数 T (T≤10) 表示数据组数。
对于每组数据,一行一个正整数 n (1≤n≤10100000)。
Output
对于每组数据,Yes 表示 n 是若干个 2050 依次拼接起来的,No 表示不是。
Sample Input
2 2050 205020
Sample Output
Yes No
Source
Test Contest
思路:水题,模拟就完事了。
#include <bits/stdc++.h>
#define INF 0x3f3f3f3f
using namespace std;
char s[100005];
int main()
{
int t;
scanf("%d",&t);
while(t--)
{
scanf("%s",s);
int len=strlen(s);
if(len%4!=0)
{
printf("No\n");
continue;
}
int flag=0;
for(int i=0;i<len;i+=4)
{
if(s[i]!='2'||s[i+1]!='0'||s[i+2]!='5'||s[i+3]!='0')
{
flag=1;
break;
}
}
if(flag)
printf("No\n");
else
printf("Yes\n");
}
return 0;
}