#include<bits/stdc++.h>
using namespace std;
bool isPrime(int num) {
// 处理特殊情况
if (num <= 1) {
return false;
}
// 判断是否为质数
for (int i = 2; i * i <= num; i++) {
if (num % i == 0) {
return false; // 若有因子,则不是质数
}
}
return true; // 没有找到因子,是质数
}
int main()
{
char s[101];
int cnt[26]={0}};
scanf("%s",s);
int i,j;
int max=0,min=0;
for(i=0;s[i]!='\0';i++)
{
if(s[i]=='a')
{
cnt[0]++;
}
if(s[i]=='b')
{
cnt[1]++;
}
if(s[i]=='c')
{
cnt[2]++;
}
if(s[i]=='d')
{
cnt[3]++;
}
if(s[i]=='e')
{
cnt[4]++;
}
if(s[i]=='f')
{
cnt[5]++;
}
if(s[i]=='g')
{
cnt[6]++;
}
if(s[i]=='h')
{
cnt[7]++;
}
if(s[i]=='i')
{
cnt[8]++;
}
if(s[i]=='j')
{
cnt[9]++;
}
if(s[i]=='k')
{
cnt[10]++;
}
if(s[i]=='l')
{
cnt[11]++;
}
if(s[i]=='m')
{
cnt[12]++;
}
if(s[i]=='n')
{
cnt[13]++;
}
if(s[i]=='o')
{
cnt[14]++;
}
if(s[i]=='p')
{
cnt[15]++;
}
if(s[i]=='q')
{
cnt[16]++;
}
if(s[i]=='r')
{
cnt[17]++;
}
if(s[i]=='s')
{
cnt[18]++;
}
if(s[i]=='t')
{
cnt[19]++;
}
if(s[i]=='u')
{
cnt[20]++;
}
if(s[i]=='v')
{
cnt[21]++;
}
if(s[i]=='w')
{
cnt[22]++;
}
if(s[i]=='x')
{
cnt[23]++;
}
if(s[i]=='y')
{
cnt[24]++;
}
if(s[i]=='z')
{
cnt[25]++;
}
}
int n,m=0;
int sum[26];
for(i=0;i<26;i++)
{
if(cnt[i]!=0)
{
sum[m]=cnt[i];
m++;
}
}
sort(sum,sum+m);
n=sum[m]-sum[0];
if (isPrime(n)) {
printf("Lucky Word\n");
printf("%d",n);
} else {
printf("No Answer\n");
printf("0");
}
return 0;
}
写成这个是因为缺少学习了什么东西吗?只会用这种低级的写法,感觉没有什么水平的提升,求大佬我该怎么办?