下载了第一个样例,看了半天都觉得跟输出一样,求dalao指教
#include<iostream>
#include<cstdio>
#include<cstring>
#include<string>
using namespace std;
int a[100],b[100],maxn=0,minn=10086;
string s;
int f[110];bool su[110];
void prime(int n){
su[1]=0;
int cnt=0;
for(int i=2;i<=n;++i){
if(su[i]) {
a[++cnt]=i;
}
for(int j=1;j<=cnt and i*a[j]<=n;++j){
su[i*a[j]]=0;
if(i%a[j]==0) break;
}
}
}
int fx(int n){
for(int i=1;i<=100;++i){
if(n==a[i] and a[i]!=0){
return 1;
}
}
return 0;
}
int main(){
cin>>s;
memset(su,1,sizeof(su));
prime(100);
for(int i=0;i<s.size();++i){
b[s[i]-'a']++;
}
for(int i=0;i<26;++i){
if(b[i]==0) continue;
maxn=max(maxn,b[i]);
minn=min(minn,b[i]);
}
int ans=maxn-minn;
if(fx(ans)==1){
cout<<"Lucky Word"<<endl<<ans;
}
else {
cout<<"No Answer"<<endl<<"0";
}
return 0;
}