#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <math.h>
int zhi(int num);
int main()
{
int z[26];
char a[101];
int len,max,min;
int i,j;
memset(z,0,sizeof(z));
scanf("%s",&a);
len=strlen(a);
for(i=0;i<len;i++)
{
z[*(a+i)-97]++;
}
i=0;
min=100;
max=0;
while(i!=26)
{
if(z[i]!=0)
{
if(z[i]>max) max=z[i];
if(z[i]<min) min=z[i];
}
i++;
}
if(zhi(max-min))
{
printf("Lucky Word\n%d",max-min);
}
else
{
printf("No Answer\n0");
}
return 0;
}
int zhi(int num)
{
if(num == 1)
return 0;
if((num==2) || (num==3) )
return 1;
if(num%6!=1 && num%6!=5)
return 0;
int tmp=sqrt(num);
for(int i=5 ; i<=tmp ; i+=6 )
{
if(num%i==0 || num%(i+2)==0 )
{
return 1;
}
}
return 0;
}
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <math.h>
int zhi(int num);
int main()
{
int z[26];
char a[101];
int len,max,min;
int i,j;
memset(z,0,sizeof(z));
scanf("%s",&a);
len=strlen(a);
for(i=0;i<len;i++)
{
z[*(a+i)-97]++;
}
i=0;
min=100;
max=0;
while(i!=26)
{
if(z[i]!=0)
{
if(z[i]>max) max=z[i];
if(z[i]<min) min=z[i];
}
i++;
}
if(zhi(max-min))
{
printf("Lucky Word\n%d",max-min);
}
else
{
printf("No Answer\n0");
}
return 0;
}
int zhi(int num)
{
if(num == 1)
return 0;
if((num==2) || (num==3) )
return 1;
if(num%6!=1 && num%6!=5)
return 0;
int tmp=sqrt(num);
for(int i=5 ; i<=tmp ; i+=6 )
{
if(num%i==0 || num%(i+2)==0 )
{
return 1;
}
}
return 0;
}
我换个判断质数的方法就过了 请问一下是我判断质数的方法错了吗?是哪里错了?求大佬解答,感谢