/*
* 字符串反向,140ms,188kb
* 单词反向用堆栈是比较方便的,一个个压入,遇到空格再一个个弹出
* 但是不知道为什么耗时这么多,大批的人都是0ms,160kb,难道用字符串处理效率高这么多?
*/
#include<iostream>
#include<string>
#include<stack>
#include<cstdio>
using namespace std;
int main(){
int i,j,n,cases;
string str;
char *p,c[80];
stack<char> word;
cin>>cases;
while(cases--){
cin>>n;
getline(cin,str);
while(n--){
getline(cin,str);
for(i=0;i<str.size();i++){
if(str[i]!=‘ ‘){
word.push(str[i]);
}
else{
while(!word.empty()){
cout<<word.top();
word.pop();
}
cout<<‘ ‘;
}
}
while(!word.empty()){
cout<<word.top();
word.pop();
}
cout<<endl;
}
if(cases) cout<<endl;
}
return 0;
}ZOJ 1151 Word Reversal,布布扣,bubuko.com
原文:http://www.cnblogs.com/naive/p/3568798.html