題目描述
笨小猴的詞彙量很小,所以每次做英語選擇題的時候都很頭疼。但是他找到了一種方法,經試驗證明,用這種方法去選擇選項的時候選對的機率非常大!
這種方法的具體描述如下:假設maxn是單詞中出現次數最多的字母的出現次數,minn是單詞中出現次數最少的字母的出現次數,如果maxn-minn是乙個質數,那麼笨小猴就認為這是個lucky word,這樣的單詞很可能就是正確的答案。
輸入輸出格式
輸入格式:
輸入檔案word.in只有一行,是乙個單詞,其中只可能出現小寫字母,並且長度小於100。
輸出格式:
輸出檔案word.out共兩行,第一行是乙個字串,假設輸入的的單詞是lucky word,那麼輸出「lucky word」,否則輸出「no answer」;
第二行是乙個整數,如果輸入單詞是lucky word,輸出maxn-minn的值,否則輸出0。
輸入輸出樣例
輸入樣例#1:
error
輸出樣例#1:
lucky word
2
輸入樣例#2:
olympic
輸出樣例#2:
no answer
0
hash記數並標記出現過的字母,然後統計出maxn和minn,相減後求是否為質數
var ch:char;
maxn,minn,x:longint;
t:array['a'..'z']of longint;
vis:array['a'..'z']of boolean;
procedure
init;
var i:char;
begin
minn:=maxlongint;
maxn:=0;
for i:='a'
to'z'
dobegin
t[i]:=0;
vis[i]:=false;
end;
while
not eoln do
begin
read(ch);
if ('a'
<=ch)and(ch<='z') then
begin
inc(t[ch]);vis[ch]:=true;
if maxnthen maxn:=t[ch];
end;
end;
for i:='a'
to'z'
doif (vis[i])and(minn>t[i]) then minn:=t[i];
end;
procedure
main;
var i,j:longint;
begin
x:=maxn-minn;
if x<2
then
begin
writeln('no answer');
write('0');
halt;
end;
for i:=2
to trunc(sqrt(x)) do
if x mod i=0
then
begin
writeln('no answer');
write('0');
halt;
end;
end;
procedure
print;
begin
writeln('lucky word');
write(x);
end;
begin
init;
main;
print;
end.
洛谷P1125 笨小猴
題目描述 笨小猴的詞彙量很小,所以每次做英語選擇題的時候都很頭疼。但是他找到了一種方法,經試驗證明,用這種方法去選擇選項的時候選對的機率非常大!這種方法的具體描述如下 假設maxn是單詞 現次數最多的字母的出現次數,minn是單詞 現次數最少的字母的出現次數,如果maxn minn是乙個質數,那麼笨...
洛谷P1125 笨小猴(水題)
笨小猴的詞彙量很小,所以每次做英語選擇題的時候都很頭疼。但是他找到了一種方法,經試驗證明,用這種方法去選擇選項的時候選對的機率非常大!這種方法的具體描述如下 假設maxn是單詞 現次數最多的字母的出現次數,minn是單詞 現次數最少的字母的出現次數,如果maxn minn是乙個質數,那麼笨小猴就認為...
素數判斷 P1125 笨小猴
題目描述 笨小猴的詞彙量很小,所以每次做英語選擇題的時候都很頭疼。但是他找到了一種方法,經試驗證明,用這種方法去選擇選項的時候選對的機率非常大!這種方法的具體描述如下 假設maxn是單詞 現次數最多的字母的出現次數,minn是單詞 現次數最少的字母的出現次數,如果maxn minn是乙個質數,那麼笨...