#include <iostream>
#include<bits/stdc++.h>
#include<stack>
using namespace std;
string judge(string s)
{
stack<char> arr;
string ans;
for(int i=0;i<=s.size()-1;i++)
{
if(arr.empty())
{
arr.push(s[i]);
continue;
}
if(s[i]=='o'&&arr.top()=='o')
{
arr.pop();
s[i]='O';
}
if(arr.empty())
{
arr.push(s[i]);
continue;
}
if(s[i]=='O'&&arr.top()=='O')
{
arr.pop();
}
else arr.push(s[i]);
}
int j=0;
while(!arr.empty())
{
ans=arr.top()+ans;
arr.pop();
}
return ans;
}
int main() {
int t;
cin>>t;
for(int i=1;i<=t;i++)
{
string s;
cin>>s;
string ans=judge(s);
cout<<ans<<endl;
}
return 0;
}
1 string的性质和代码应用
2 判断条件if else语句之间的关系思考清楚

京公网安备 11010502036488号