給定一句英語,要求你編寫程式,將句中所有單詞的順序顛倒輸出。
測試輸入包含乙個測試用例,在一行內給出總長度不超過500 000的字串。字串由若干單詞和若干空格組成,其中單詞是由英文本母(大小寫有區分)組成的字串,單詞之間用若干個空格分開。
每個測試用例的輸出佔一行,輸出倒序後的句子,並且保證單詞間只有1個空格。
hello world here i come
come i here world hello一開始用string s,while(cin >> s) 做的,5行**只拿了19分,差一分,全為空格的情況沒有處理。然後就只能推倒重來了,先讀完在後再掃瞄,判斷空格,每讀完乙個就push乙個,但是最後乙個會漏掉,要特判一下。更多細節看**。
#include
#include
#include
#include
#include
#include
#include
using
namespace std;
#define rep(i,m,n) for(int i=m;i#define rep1(i,m,n) for(int i=m;i>=n;i--)
#define pb push_back
intmain()
}}// 最後乙個會漏掉,但是要判斷一下
if(s1.
length()
>
0) res.
pb(s1);if
(res.
size()
) cout << res[res.
size()
-1];
rep1
(i,res.
size()
-2,0
) cout <<
" "<< res[i]
;return0;
}/* 如下**可輕鬆拿下19分,不過想拿剩下的一分,**就沒有這麼簡潔了
int main()*/
PTA 說反話 加強版
給定一句英語,要求你編寫程式,將句中所有單詞的順序顛倒輸出。輸入格式 測試輸入包含乙個測試用例,在一行內給出總長度不超過500 000的字串。字串由若干單詞和若干空格組成,其中單詞是由英文本母 大小寫有區分 組成的字串,單詞之間用若干個空格分開。輸出格式 每個測試用例的輸出佔一行,輸出倒序後的句子,...
說反話 加強版
給定一句英語,要求你編寫程式,將句中所有單詞的順序顛倒輸出。測試輸入包含乙個測試用例,在一行內給出總長度不超過500 000的字串。字串由若干單詞和若干空格組成,其中單詞是由英文本母 大小寫有區分 組成的字串,單詞之間用若干個空格分開。每個測試用例的輸出佔一行,輸出倒序後的句子,並且保證單詞間只有1...
PTA 5 10 說反話 加強版
5 10 說反話 加強版 20分 給定一句英語,要求你編寫程式,將句中所有單詞的順序顛倒輸出。測試輸入包含乙個測試用例,在一行內給出總長度不超過500 000的字串。字串由若干單詞和若干空格組成,其中單詞是由英文本母 大小寫有區分 組成的字串,單詞之間用若干個空格分開。每個測試用例的輸出佔一行,輸出...