PTA 1009 說反話【棧】 (20 分)

1009 說反話 (20 分)

給定一句英語,要求你編寫程序,將句中所有單詞的順序顛倒輸出。

輸入格式:

測試輸入包含一個測試用例,在一行內給出總長度不超過 80 的字符串。字符串由若干單詞和若干空格組成,其中單詞是由英文字母(大小寫有區分)組成的字符串,單詞之間用 1 個空格分開,輸入保證句子末尾沒有多餘的空格。

輸出格式:

每個測試用例的輸出佔一行,輸出倒序後的句子。

輸入樣例:

Hello World Here I Come

輸出樣例:

Come I Here World Hello

題記:

這道題最簡單的方法就是用STL中的棧,不信你看下面代碼,超級簡單有木有!!

還不會棧的小夥伴建議學一學,STL都學一學,對做題幫助非常大!

棧的原理是先進後出,下面代碼中v.push()是進棧,v.pop()是出棧,v.top()是棧頂元素,v.empty()是判斷棧是否爲空。具體實現不再贅述。

C++程序如下:

#include <iostream>
#include <stack>
using namespace std;

int main (void){
    stack<string> v;
    string s;
    while(cin >> s){
    	v.push(s);
	}
	cout << v.top();
	v.pop();
	while(!v.empty()){
		cout << " " << v.top();
		v.pop();
	}
    return 0;
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章