1009. 说反话 (20)
/**
* 1.本题思路:将输入的每个单词s都分别v.push(s)压入栈中
* 再输出栈顶v.top(),然后将栈顶元素弹出v.pop(),直到栈空为止
* 2.考察栈的基本用法:它是一种运算受限的线性表。其限制是仅允许在表的一端进行插入和删除运算。
* 这一端被称为栈顶,相对地,把另一端称为栈底。
* 向一个栈插入新元素又称作进栈、入栈或压栈,它是把新元素放到栈顶元素的上面,使之成为新的栈顶元素;
* 从一个栈删除元素又称作出栈或退栈,它是把栈顶元素删除掉,使其相邻的元素成为新的栈顶元素。
* 3.参考博客:https://www.liuchuo.net/archives/524
* */
#include <iostream>
#include <stack>
using namespace std;
int main() {
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;
}