桌上有两根相互缠绕的电线,问能否在符合题目要求的移动下将这两根电线解开
不难看出相邻的两个同色线结是可以消去的,那么能否解开就等价于能否把线结消空。
这样用一个栈模拟即可。
#include<bits/stdc++.h>
using namespace std;
const int maxn = 112345;
char arr[maxn];
stack<char> S;
int main(){
scanf("%s",arr);
for(int i=0;arr[i];i++){
if(!S.empty() && S.top() == arr[i]){
S.pop();
}
else{
S.push(arr[i]);
}
}
puts(S.empty()?"Yes":"No");
return 0;
}
最后
以上就是美满季节最近收集整理的关于Codeforces 344D - Alternating Current的全部内容,更多相关Codeforces内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复