7-32 說反話-加強版(20 分)
給定一句英語,要求你編寫程式,將句中所有單詞的順序顛倒輸出。
測試輸入包含乙個測試用例,在一行內給出總長度不超過500 000的字串。字串由若干單詞和若干空格組成,其中單詞是由英文本母(大小寫有區分)組成的字串,單詞之間用若干個空格分開。
每個測試用例的輸出佔一行,輸出倒序後的句子,並且保證單詞間只有1個空格。
hello world here i come
come i here world hello
單位: 浙江大學
時間限制: 300ms
記憶體限制: 64mb
**長度限制: 16
今天做了一場練習模擬考試結果很傷心,明天就是比賽了,但是心裡還是沒有緊張。其實最大的失誤就是直接去寫**了但是沒有看清楚題目要求的是什麼,結果少了很多分沒得,這就是我最大的失誤,還有就是不要緊張。記得先看清楚題目想要你求什麼,還有就是如果可以的話,先在你的紙上用筆把你的思路再寫**,還有記得考慮很多情況。不一定只有這個情況而已。剛剛開始的時候我就寫了案例給的部分,但是沒有得到滿分。然後我覺得乙個很聰明的部分就是把空格換成0線看看先,發現是自己沒有考慮到前面是空格還有後面是空格的情況。
思路:我先把這段字母壓縮成和例子一樣的前面和後面的都沒有空格。然後輸出第乙個單詞時後面不是空格,然後加上個空格。在多個空格的情況下就跳過。然後下標是指向空格的,但是空格前面是字母。最後還有就是把第乙個單詞輸出,而且不能帶空格。
#include
#include
#include
int main()
k2=k;
while(a[open]==' ')//找到最開始的字母並開始
for(i=k-1;i>=open;i--)//用最後乙個字母開始迴圈
for(j=i+1;jif(k2==k)//剛開始第乙個字元要輸出乙個空格
printf(" ");
k2=i+1;//k2表示空格的部分 }}
for(i=open;a[i]!=' ';i++)//輸出第乙個單詞
printf("%c",a[i]);
return 0;
}
說反話 加強版
給定一句英語,要求你編寫程式,將句中所有單詞的順序顛倒輸出。測試輸入包含乙個測試用例,在一行內給出總長度不超過500 000的字串。字串由若干單詞和若干空格組成,其中單詞是由英文本母 大小寫有區分 組成的字串,單詞之間用若干個空格分開。每個測試用例的輸出佔一行,輸出倒序後的句子,並且保證單詞間只有1...
32 說反話 加強版
給定一句英語,要求你編寫程式,將句中所有單詞的順序顛倒輸出。測試輸入包含乙個測試用例,在一行內給出總長度不超過500 000的字串。字串由若干單詞和若干空格組成,其中單詞是由英文本母 大小寫有區分 組成的字串,單詞之間用若干個空格分開。每個測試用例的輸出佔一行,輸出倒序後的句子,並且保證單詞間只有1...
PTA 說反話 加強版
給定一句英語,要求你編寫程式,將句中所有單詞的順序顛倒輸出。測試輸入包含乙個測試用例,在一行內給出總長度不超過500 000的字串。字串由若干單詞和若干空格組成,其中單詞是由英文本母 大小寫有區分 組成的字串,單詞之間用若干個空格分開。每個測試用例的輸出佔一行,輸出倒序後的句子,並且保證單詞間只有1...