题目:
题目描述
小 W 喜欢玩字符串!
现在小 W 手头上刚好有一个全部由小写字母组成的字符串,而他现在能够进行的操作是:若某个小写字母在这个字符串中出现了两次以上,那么他可以将这个小写字母全部变为一个任意的小写字母。
现在小 W 非常好奇一个问题:如果他可以进行这样的操作任意次,那么他有没有可能将整个字符串变为同一个字母呢?
小 W 想不出来,只能向你求助了。
为了防止你随意猜一个敷衍他,小 W 准备了很多个字符串来问你。
输入
第一行为数据组数 T,表示有 T 组数据。
接下来 T 行每一行都有一个仅由小写字母组成的字符串,含义如题意所示。
输出
输出共 T 行。
在每一行中,若能够通过操作将字符串变为同一个字母,则输出”YES”;否则输出”NO”。
代码:
#include <bits/stdc++.h>
char str[1010];
int main()
{
int T;
scanf("%d", &T);
getchar();
while(T--)
{
int pool[30] = {0, };
bool flag = false;
int len;
std::cin >> str;
len = strlen(str);
for(int i = 0; i < len; i++)
{
pool[str[i] - 'a' + 1]++;
}
for(int i = 1; i <= 26; i++)
{
if(pool[i] >= 2)
{
printf("YES\n");
flag = true;
break;
}
}
if(flag == false)
{
printf("NO\n");
}
}
return 0;
}
样例过了,结果WA 0