https://www.luogu.org/problemnew/show/P1125
判断一个字符串中出现次数最多的字符的出现次数-出现次数最少的字符的出现次数是不是一个素数。注意特判0和1不是素数,统计时出现次数为0不算出现次数最少。
#include<cstdio>
#include<cmath>
#include<cstring>
#include<algorithm>
using namespace std;
int n,cnt[26],maxn,minn=100;
char s[100];
bool check(int n)
{
if(n==0 || n==1)return 0;
int m=sqrt(n)+0.5;
for(int i=2;i<=m;i++)if(!(n%i))return 0;
return 1;
}
int main()
{
scanf("%s",s);
n=strlen(s);
for(int i=0;i<n;i++)cnt[s[i]-'a']++;
for(int i=0;i<26;i++)if(cnt[i]){maxn=max(maxn,cnt[i]);minn=min(minn,cnt[i]);}
if(check(maxn-minn))printf("Lucky Word\n%d\n",maxn-minn);
else printf("No Answer\n0\n");
return 0;
}