首页 > 代码库 > P1010 笨小猴【tyvj】
P1010 笨小猴【tyvj】
/*===========================================================P1010 笨小猴描述 Description笨小猴的词汇量很小,所以每次做英语选择题的时候都很头疼。但是他找到了一种方法,经试验证明,用这种方法去选择选项的时候选对的几率非常大!这种方法的具体描述如下:假设maxn是单词中出现次数最多的字母的出现次数,minn是单词中出现次数最少的字母的出现次数,如果maxn-minn是一个质数,那么笨小猴就认为这是个Lucky Word,这样的单词很可能就是正确的答案。输入格式 InputFormat输入只有一行,是一个单词,其中只可能出现小写字母,并且长度小于100。输出格式 OutputFormat输出共两行,第一行是一个字符串,假设输入的的单词是Lucky Word,那么输出“Lucky Word”,否则输出“No Answer”;第二行是一个整数,如果输入单词是Lucky Word,输出maxn-minn的值,否则输出0。输入样例1error输入样例2olympic输出样例1Lucky Word2输出样例2No Answer0这个题目要注意:有些字母可能没有出现 ,所以统计时可能会发现出现的最少次数是0.这个不合理,要屏蔽0这个情况。 =============================================================*/
1 #include<stdio.h> 2 #include<math.h> 3 int fun(long n); 4 int main() 5 { 6 char s[108]; 7 int num[26]={0}; 8 int i=0; 9 int maxn=-1,minn=1000;10 int t,p;11 scanf("%s",s);12 while(s[i]!=‘\0‘)13 {14 num[s[i]-‘a‘]++;15 i=i+1;16 }17 for(i=0;i<26;i++)18 {19 if(num[i]>maxn)20 {21 maxn=num[i];22 }23 if(num[i]<minn&&num[i]!=0)24 {25 minn=num[i];26 }27 }28 t=maxn-minn;29 if(fun(t)==1)30 {31 printf("Lucky Word\n%d\n",t);32 }33 else printf("No Answer\n0\n");34 35 return 0;36 }37 int fun(long n)//判断n是否质数,是则返回1,否则返回0;38 {39 long i,t;40 if(n<2) return 0;41 t=sqrt(n);42 for(i=2;i<=t;i++)43 {44 if(n%i==0) return 0;45 }46 return 1;47 }
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。