题目链接 :http://codeforces.com/contest/1025/problem/A
题目大意 :给你一串字符,一种字母可以变成另外一种字母,前提是当前字母个数必须是2个以上,只有一个是无法改变的,现在问是否能够把一串字母,变成所有字母都一样。
解题思路 :只要有一个字母个数大于2,那么他就可以把所有的字母都变成同样的字母。
代码:
#include <bits/stdc++.h>
using namespace std;
const int MAXN = 1e5 + 10;
char s[MAXN];
int a[30];
int main() {
int n, flag = 0;
memset (a, 0, sizeof(0));
cin >> n >> s;
int len = strlen(s);
for (int i = 0; i < len; i++) {
a[s[i] - 'a'] ++;
if (a[s[i] - 'a'] > 1 || n == 1) flag = 1;
}
flag == 1 ? puts("Yes") : puts("No");
return 0;
}