社区讨论
样例都过但0pts全wa求调或hack(码风简洁舒适)
P1944最长括号匹配参与者 1已保存回复 1
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 1 条
- 当前快照
- 1 份
- 快照标识符
- @lo1njjyx
- 此快照首次捕获于
- 2023/10/22 23:57 2 年前
- 此快照最后确认于
- 2023/11/03 00:40 2 年前
CPP
#include<bits/stdc++.h>
#define int long long
using namespace std;
string s;
int n,ans,tag;
stack<char> sta;
int opt[1000005];
signed main(){
cin >> s;
n = s.size();
s = ' ' + s;
for(int i = 1;i <= n;i++){
if(!sta.size())
sta.push(s[i]);
else if(s[i] == ')' && sta.top() == '(' || s[i] == ']' && sta.top() == '['){
opt[i] = opt[i - 1] + 2;
sta.pop();
}
else {
sta.push(s[i]);
}
if(opt[i] > ans)
ans = opt[i],tag = i;
}
for(int i = tag - ans + 1;i <= tag;i++){
cout << s[i];
}
cout << endl;
return 0;
}
回复
共 1 条回复,欢迎继续交流。
正在加载回复...