68 最長的單詞
問題描述 :
明明剛開始學習英語的時候,對英語有濃厚的興趣,但是隨著時間的推移,英語單詞量的增加,明明越來越覺得背單詞是一件相當痛苦的事情。於是他想出各種各樣的方法來增加背單詞的樂趣。
這次他想出的方法是把所有要背的英語單詞排成一行,找出其中最長的乙個單詞來先背,然後劃去這個單詞,在剩下的單詞中再找出乙個最長的單詞來背,以此類推,直到把所有單詞都背完。如果有多個長度相同的單詞,則先背一行中靠前的那個單詞。這樣做的好處是:背到越後面,單詞越短,越容易背,越能增加背單詞的信心。
例如有這麼一行單詞: one two three four five 明明會首先挑出three來背,因為它是最長的乙個單詞,由5個字母組成;然後明明會選擇four這個單詞,雖然five這個單詞的長度和four這個單詞的長度一樣,但是four在five的前面,所以明明會先背four這個單詞,然後再背five,等明明把five這個單詞背完以後,接著背one這個單詞,最後背的是two這個單詞。
但是在這樣背單詞之中,明明又發現了另乙個問題,當要背非常多的單詞時,尋找最長的單詞會花很多時間,他想讓你幫助他寫乙個程式,找出一行單詞中最長的那個,節約明明背單詞所花的時間,與此同時,明明希望你能告訴他這個英文單詞有多少個字母組成,那他可以做到心裡有數。
明明的問題可以歸結為:在一行英文單詞中,找出其中最長的單詞(若有多個最長,找出第乙個出現的),並輸出這個單詞的長度。
輸入說明 :
你寫的程式要求從標準輸入裝置中讀入測試資料作為你所寫程式的輸入資料。標準輸入裝置中有多組測試資料,每組測試資料僅佔一行,每行包括許多個英語單詞和空格,單詞和單詞之間可能有多個空格,每行的長度不會超過1000個字元。每組測試資料與其後一組測試資料之間沒有任何空行,第一組測試資料前面以及最後一組測試資料後面也都沒有任何空行。
輸出說明 :
對於每一組測試資料,你寫的程式要求計算出一組相應的運算結果,並將每組運算結果作為你所寫程式的輸出資料依次寫入到標準輸出裝置中。每組運算結果為乙個整數和乙個英語單詞,整數表示該英文單詞的長度,整數和單詞之間用乙個空格隔開。輸出時,每組運算結果單獨佔一行,其行首和行尾都沒有任何空格或其他任何字元,每組運算結果與其後一組運算結果之間沒有任何空行或其他任何字元,第一組運算結果前面以及最後一組運算結果後面也都沒有任何空行或其他任何字元。 注:通常,顯示屏為標準輸出裝置。
輸入範例 :
a bc def ghijk lmn
abc def ghi
輸出範例 :
5 ghijk
3 abc
#include
#include
#include
intmain()
if(a[i]
==' '
) x=0;
t=i+1;
}}if(x>max)
printf
("%d "
,max)
;for
(i=maxi;i)printf
("\n");
}return0;
}
68 最長的單詞
68 最長的單詞 問題描述 明明剛開始學習英語的時候,對英語有濃厚的興趣,但是隨著時間的推移,英語單詞量的增加,明明越來越覺得背單詞是一件相當痛苦的事情。於是他想出各種各樣的方法來增加背單詞的樂趣。這次他想出的方法是把所有要背的英語單詞排成一行,找出其中最長的乙個單詞來先背,然後劃去這個單詞,在剩下...
東華OJ高階題68 最長的單詞
68 最長的單詞 問題描述 明明剛開始學習英語的時候,對英語有濃厚的興趣,但是隨著時間的推移,英語單詞量的增加,明明越來越覺得背單詞是一件相當痛苦的事情。於是他想出各種各樣的方法來增加背單詞的樂趣。這次他想出的方法是把所有要背的英語單詞排成一行,找出其中最長的乙個單詞來先背,然後劃去這個單詞,在剩下...
最長的單詞
description 求一行句子中最長的單詞,如果出現並列情況,輸出字典序最小的單詞,例如如果above和alive同時為最長單詞,則輸出above input 行1 一行空格分隔的字母,此行最少1個字元 且非空格 最多1000個字元,單詞最長16個字元 output 行1 最長的單詞 思路 讀入...