日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

笨小熊 -- ACM解决方法

發布時間:2023/11/30 编程问答 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 笨小熊 -- ACM解决方法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

描述

笨小熊的詞匯量很小,所以每次做英語選擇題的時候都很頭疼。但是他找到了一種方法,經試驗證明,用這種方法去選擇選項的時候選對的幾率非常大! 這種方法的具體描述如下:假設maxn是單詞中出現次數最多的字母的出現次數,minn是單詞中出現次數最少的字母的出現次數,如果maxn-minn是一個質數,那么笨小熊就認為這是個Lucky Word,這樣的單詞很可能就是正確的答案。

輸入

第一行數據N(0<N<100)表示測試數據組數。 每組測試數據輸入只有一行,是一個單詞,其中只可能出現小寫字母,并且長度小于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.h>int zhishu (int n) {int i;if (n==0 || n==1)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--){max=0;min=100;for(i=0;i<26;i++)a[i] = 0;scanf("%s",ch);for(i=0; i<strlen(ch); i++) //不能直接在此循環中找最值a[ch[i]-'a']++;for(i=0;i<26;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; }

總結

以上是生活随笔為你收集整理的笨小熊 -- ACM解决方法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。