蓝桥杯 笨小猴
题目描述
笨小猴的词汇量很小,所以每次做英语选择题的时候都很头疼。但是他找到了一种方法,经试验证明,用这种方法去选择选项的时候选对的几率非常大!
这种方法的具体描述如下:假设 maxn 是单词中出现次数最多的字母的出现次数,minn 是单词中出现次数最少的字母的出现次数,如果 maxn-minn 是一个质数,那么笨小猴就认为这是个 Lucky Word,这样的单词很可能就是正确的答案。
输入描述
输入一行,是一个单词,其中只可能出现小写字母,并且长度小于 100。
输出描述
输出两行,第一行是一个字符串,假设输入的的单词是Lucky Word,那么输出Lucky Word,否则输出No Answer;
第二行是一个整数,如果输入单词是 Lucky Word,输出 maxn-minn 的值,否则输出 0。
输入输出样例
示例 1
输入:
error
输出:
Lucky Word 2
示例2
输入:
Olympic
输出:
No Answer 0
代码:
#include <stdio.h> #include <stdlib.h> #include <string.h> int judge(int m){//判断是否为质数 int f=0; if(m==2){ f=0; }else if(m==0||m==1){ f=1; }else{ for(int i=2;i<m;i++){ if(m%i==0){ f=1; break; } } } if(f==0) return 1; else return 0; } int main() { char s[105]; int count[26]={0},i,len,max=0,min=999,j; gets(s); len=strlen(s); for(i=0;i<len;i++){ if(s[i]>65&&s[i]<97){ count[s[i]-65]++; }else if(s[i]>=97){ count[s[i]-97]++; } } for(i=0;i<26;i++){ if(count[i]>max){ max=count[i]; } if(count[i]<min&&count[i]!=0){ min=count[i]; } } if(judge(max-min)){ printf("Lucky Word\n"); printf("%d",max-min); }else{ printf("No Answer\n"); printf("0"); } return 0; }
本文来自博客园,作者:弈星,转载请注明原文链接:https://www.cnblogs.com/8023yyl/p/15796661.html

浙公网安备 33010602011771号