小白的第一篇題解:
話不多說進入正題:
笨小猴的詞彙量很小,所以每次做英語選擇題的時候都很頭疼。但是他找到了一種方法,經試驗證明,用這種方法去選擇選項的時候選對的機率非常大!
這種方法的具體描述如下:假設maxn是單詞**現次數最多的字母的出現次數,minn是單詞**現次數最少的字母的出現次數,如果maxn-minn是乙個質數,那麼笨小猴就認為這是個lucky word,這樣的單詞很可能就是正確的答案。
輸入格式 乙個單詞,其中只可能出現小寫字母,並且長度小於100100100。
輸出格式 共兩行,第一行是乙個字串,假設輸入的的單詞是lucky word,那麼輸出「lucky word」,否則輸出「no answer」;
第二行是乙個整數,如果輸入單詞是lucky word,輸出maxn-minn的值,否則輸出000。
思路:函式分塊操作,將題目分解,字串的處理,單字元最多和出現最少,桶排序的思想,0-126包含26個英文本母,我們分別設定乙個桶,裝著字串出現的字元個數,由於可能出現空桶,再開乙個 桶,將第乙個桶中非0元素剔除,轉移到第二個桶中,然後遍歷第二個桶,比較找到最多和最少的桶,返回他們的差;第二步,判斷質數函式,注意0和1,很簡單了,為了方便,使用布林型別變數返回,主函式一呼叫,完美通過。
#include
#include
#include
#define maxn 101
using
namespace std;
int sss[
126]
;//桶子 1
int aaa[
126]
;//桶子 2
//判斷質數
bool
zhi(
int a)
return
true;}
//最多與最少字母的差
intfun
(char a)
int ma=0;
int mi=
101;
for(
int i=
0;aaa[i]
;i++
)return ma-mi;
}int main (
)
1966 笨小猴 字串 質數 ZCMU
笨小猴的詞彙量很小,所以每次做英語選擇題的時候都很頭疼。但是他找到了一種方法,經試驗證明,用這種方法去選擇選項的時候選對的機率非常大!這種方法的具體描述如下 假設maxn是單詞中出現次數最多的字母的出現次數,minn是單詞中出現次數最少的字母的出現次數,如果maxn minn是乙個質數,那麼笨小猴就...
LC205 同構字串 桶排序 計數排序
給定兩個字串 s 和 t,判斷它們是否是同構的。如果 s 中的字元可以被替換得到 t 那麼這兩個字串是同構的。輸入 s egg t add 輸出 true輸入 s foo t bar 輸出 false計數排序包含桶排序的演算法思想。計數排序適用於量特別大,但是資料範圍小的情況 員工年齡排序,快速得知...
C 字串陣列排序的小例子
複製 如下 include include include void q sortb char str 20 20 int n void qs char str 20 20 int n void main char str1 20 qs str,7 q sortb str,7 for i 0 i 7...