QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#217065 | #5534. Match | Camillus# | 0 | 0ms | 3652kb | C++20 | 1.0kb | 2023-10-16 13:25:42 | 2024-07-04 02:20:12 |
answer
#include <bits/stdc++.h>
using namespace std;
signed main() {
#ifndef LOCAL
ios::sync_with_stdio(false);
cin.tie(nullptr);
#else
freopen("input.txt", "r", stdin);
freopen("output.txt", "w", stdout);
#endif
string s;
cin >> s;
int n = (int)s.size();
string t = s;
vector<int> q;
for (int i = 0; i < n; i++) {
if (!q.empty() && s[q.back()] == s[i]) {
t[i] = ')';
q.pop_back();
} else {
t[i] = '(';
q.push_back(i);
}
}
if (!q.empty()) {
cout << -1 << '\n';
} else {
while (true) {
bool ok = false;
for (int i = 0; i + 1 < n; i++) {
if (s[i] == s[i + 1] && t[i] == ')' && t[i + 1] == '(') {
swap(t[i], t[i + 1]);
ok = true;
}
}
if (!ok) {
break;
}
}
cout << t << '\n';
}
return 0;
}
Details
Tip: Click on the bar to expand more detailed information
Subtask #1:
score: 0
Wrong Answer
Test #1:
score: 10
Accepted
time: 0ms
memory: 3552kb
input:
abbaaa
output:
(()())
result:
ok single line: '(()())'
Test #2:
score: -10
Wrong Answer
time: 0ms
memory: 3652kb
input:
cbbbbccbbccbbbbbbc
output:
((())()()()((())))
result:
wrong answer 1st lines differ - expected: '(((((((()))())))))', found: '((())()()()((())))'
Subtask #2:
score: 0
Skipped
Dependency #1:
0%
Subtask #3:
score: 0
Skipped
Dependency #1:
0%