1 条题解
-
0
#include <bits/stdc++.h> using namespace std;
#define int long long string s; stack sk; int Max;
signed main() { ios::sync_with_stdio(false); cin.tie(0);
if (!(cin >> s)) return 0; sk.push(-1); for (int i = 0; i < s.size(); i++) { if (s[i] == '(' || s[i] == '[') { sk.push(i); } else { if (sk.size() > 1) { char now = s[sk.top()]; if ((now == '(' && s[i] == ')') || (now == '[' && s[i] == ']')) { sk.pop(); Max = max(Max, i - sk.top()); } else { while (!sk.empty()) sk.pop(); sk.push(i); } } else { sk.pop(); sk.push(i); } } } cout << Max << endl; return 0;}
- 1
信息
- ID
- 18289
- 时间
- 10000ms
- 内存
- 1024MiB
- 难度
- 10
- 标签
- (无)
- 递交数
- 1
- 已通过
- 1
- 上传者