代码:
#include<bits/stdc++.h>
using namespace std;
int cnt['z'+10];
bool k(int a){
if(a<2)return 0;
for(int i=2;i*i<=a;i++)
if(a%i==0)return 0;
return 1;
}
int main()
{
string s;
cin>>s;
int i,Max=0,Min=1001,h;
for(i=0;i<s.size();i++){
cnt[s[i]]++;
}
for(i='a';i<='z';i++){
if(cnt[i]!=0){
if(cnt[i]>=Max){
Max=cnt[i];
}
if(cnt[i]<=Min){
Min=cnt[i];
}
}
}
h=Max-Min;
if(k(h)){
cout<<"Lucky Word"<<endl<<h;
}
else cout<<"No Answer"<<endl<<0;
return 0;
}
DEV-C++可以运行,试过。
你判断质数循环用的双循环怎么循环变量都是i啊,这肯定不行啊,互相影响的。把外层循环改为变量j吧