网站建设平台汉龙,自己做一个网站的成本,誉重网站建设公司,400电话安装佛山营销网站建设描述
笨小熊的词汇量很小#xff0c;所以每次做英语选择题的时候都很头疼。但是他找到了一种方法#xff0c;经试验证明#xff0c;用这种方法去选择选项的时候选对的几率非常大#xff01;
这种方法的具体描述如下#xff1a;假设maxn是单词中出现次数最多的字母的出现…描述
笨小熊的词汇量很小所以每次做英语选择题的时候都很头疼。但是他找到了一种方法经试验证明用这种方法去选择选项的时候选对的几率非常大
这种方法的具体描述如下假设maxn是单词中出现次数最多的字母的出现次数minn是单词中出现次数最少的字母的出现次数如果maxn-minn是一个质数那么笨小熊就认为这是个Lucky Word这样的单词很可能就是正确的答案。
输入
第一行数据N(0N100)表示测试数据组数。
每组测试数据输入只有一行是一个单词其中只可能出现小写字母并且长度小于100。
输出
每组测试数据输出共两行第一行是一个字符串假设输入的的单词是Lucky Word那么输出“Lucky Word”否则输出“No Answer”
第二行是一个整数如果输入单词是Lucky Word输出maxn-minn的值否则输出0
样例输入
2
error
olympic
样例输出
Lucky Word
2
No Answer
0 思路及易错点
在记录最小值时不能直接在读取数据时直接比较最小值例如hhhhjjj 读取第一个h时会将min赋值为1之后在比较时最小值始终为1不会得到实际的最小值3. 代码如下
#include stdio.h
#include string.hint zhishu (int n)
{int i;if (n0 || n1)return 0;for (i 2 ; i n ; i)if (!(n % i))break;if (!(i-n))return 1;elsereturn 0;
}int main (void)
{int x,i,n,a[26];int max,min;char ch[100];scanf(%d,x);while(x--){max0;min100;for(i0;i26;i)a[i] 0;scanf(%s,ch);for(i0; istrlen(ch); i) //不能直接在此循环中找最值a[ch[i]-a];for(i0;i26;i) //只能再用一次循环排序{if (a[i]0)continue;if(max a[i])max a[i];if(min a[i])min a[i];}if(zhishu(max-min))printf(Lucky Word\n%d\n,max-min);elseprintf(No Answer\n0\n);}return 0;
}