牛客练习——吐泡泡(简单的栈的运用题:别被多组输入恶心到了)
Posted C+++++++++++++++++++
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了牛客练习——吐泡泡(简单的栈的运用题:别被多组输入恶心到了)相关的知识,希望对你有一定的参考价值。
题目
题目解析
这是一道基础的不能再基础的栈的运用题,硬是被牛客的多组输入恶心到了!!!
具体就是入栈出栈,然后处理栈中元素即可。
直接上代码应该就能秒懂。
解题代码
#include<bits/stdc++.h>
using namespace std;
string St;
//TODO 当两个o融为O时会出现额外的消除情况
void solve_O()
int i = St.size() - 1;
int j = St.size() - 2;
for (; i >= 0 && j >= 0; i -= 2, j -= 2)
if (St[i] == 'O' && St[i] == St[j])
St.pop_back(), St.pop_back();
else break;
int main()
ios::sync_with_stdio(false);
string s;
while (cin >> s)
for (auto ch:s)
if (ch == 'o' && !St.empty() && St.back() == 'o')
St.back() = 'O';
solve_O();
else if (ch == 'O' && !St.empty() && St.back() == 'O')
St.pop_back();
else
St.push_back(ch);
cout << St << endl;
St.clear();
return 0;
以上是关于牛客练习——吐泡泡(简单的栈的运用题:别被多组输入恶心到了)的主要内容,如果未能解决你的问题,请参考以下文章
2018年全国多校算法寒假训练营练习比赛(第二场)A.吐泡泡
题集牛客网·2018年全国多校算法寒假训练营练习比赛(第二场)
吐泡泡(2018年全国多校算法寒假训练营练习比赛(第二场)+栈模拟)+Plug-in(codeforces81A+栈模拟)