範例程式碼 uva10789
//uva10789
#include <iostream>
#include <set>
#include <vector>
using namespace std;
void mkprime(vector<bool>& prime) {
prime[0] = false;
prime[1] = false;
for (int i = 2; i < 2001; i++) {
if (prime[i]) {
for (int j = i + i; j < 2001; j += i) {
prime[j] = false;
}
}
}
}
int main() {
int T = 0;
vector<bool> prime(2001, true);
mkprime(prime);
cin >> T;
for (int i = 0; i < T; i++) {
string input = "";
set<char> output;
vector<int> count('z' + 1, 0);
cin >> input;
for (auto c : input) {
count[c]++;
}
for (int j = 0; j < count.size(); j++) {
if (prime[count[j]]) {
output.insert(j);
}
}
cout << "Case " << i + 1 << ": ";
if (output.empty()) {
cout << "empty" << endl;
} else {
for (auto j : output) cout << j;
cout << endl;
}
}
return 0;
}