#include<iostream>
#include<cstdio>
#include<string>
#include<queue>
#include<stack>
#include<algorithm>
#include<cmath>
#include<list>
#include<cstdlib>
#include<cstring>
using namespace std;
int main(){
string s;
int t;
cin>>t;
getchar();
while(t--){
getline(cin,s);//输入空格需要用getline
int len;
len=(int )s.size();
stack<char >st;
for(int i=0;i<len;i++){
if(s[i]!=' '){
st.push(s[i]);//持续入栈
}
if(s[i]==' '||i==len-1){//遇到空格或栈满的情况
while(!st.empty()){//栈非空
printf("%c",st.top());//打印栈顶元素
st.pop();//删除栈顶元素
}
if(s[i]==' '){
cout<<" ";//输出空格
}
}
}
cout<<endl;
}
return 0;
}
来源:CSDN
作者:TimberWill
链接:https://blog.csdn.net/qq_45480682/article/details/104667685