zcmu-1966
1966: 笨小猴
Time Limit:?1 Sec??Memory Limit:?128 MBSubmit:?69??Solved:?19
[Submit][Status][Web Board]
Description
笨小猴的詞匯量很小,所以每次做英語選擇題的時候都很頭疼。但是他找到了一種方法,經試驗證明,用這種方法去選擇選項的時候選對的幾率非常大!
這種方法的具體描述如下:假設maxn是單詞中出現次數最多的字母的出現次數,minn是單詞中出現次數最少的字母的出現次數,如果maxn-minn是一個質數,那么笨小猴就認為這是個Lucky Word,這樣的單詞很可能就是正確的答案。
Input
輸入文件word.in只有一行,是一個單詞,其中只可能出現小寫字母,并且長度小于100。
Output
輸出文件word.out共兩行,第一行是一個字符串,假設輸入的的單詞是Lucky Word,那么輸出“Lucky Word”,否則輸出“No Answer”;
第二行是一個整數,如果輸入單詞是Lucky Word,輸出maxn-minn的值,否則輸出0。
Sample Input
errorOlympicSample Output
Lucky Word2No Answer0HINT
【輸入輸出樣例1解釋】
單詞error中出現最多的字母r出現了3次,出現次數最少的字母出現了1次,3-1=2,2是質數。
Source
NOIP2008提高組
思路:水題,直接判斷就可以,這里的的第二個樣例是錯的
代碼:
#include<cstdio> #include<cmath> #include<cstring> using namespace std;bool find(int x) {if(x==1||x==0)return false;if(x==2)return true;for (int i = 2 ; i < (int) sqrt(x) + 1 ; ++i)if (x % i == 0) return false;return true; } int main() {char s[110];while(~scanf("%s",s)){int len=strlen(s);int sum;int max = 0;int min = 99999;for(char c = 'a'; c<='z'; ++c){sum=0;for (int i=0; i<len ; i++)if(s[i]==c)sum++;if (sum > max && sum != 0)max=sum;if (sum < min && sum != 0)min=sum;}sum=max-min;if(find(sum)){printf("Lucky Word\n");printf("%d\n",sum);}else{printf("No Answer\n");printf("0\n");}}return 0; }總結
- 上一篇: zabbix 监控使用宏自动发现网卡并进
- 下一篇: json在线解析工具大集合