QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#574865 | #5108. Prehistoric Programs | deepthought | WA | 21ms | 9436kb | C++23 | 1.3kb | 2024-09-19 03:41:37 | 2024-09-19 03:41:37 |
Judging History
answer
// for icpc astana quest
#include <bits/stdc++.h>
using namespace std;
const int MAXX = 10005;
int32_t main() {
ios_base::sync_with_stdio(0);
cin.tie(0);
int t;
cin >> t;
set < pair <int, pair <int, pair <string, int>> > > s;
for(int i = 0; i < t; i++) {
string str;
cin >> str;
int res = 0;
int bam = 0;
for(int j = 0; j < str.length(); j++) {
if(str[j] == '(') {
res++;
}
else res--;
bam = min(bam, res);
}
s.insert({-bam, {-res, {str, i}}});
// cout << bam << " " << i << endl;
}
string ans = "";
for(auto x: s) {
ans += ((x.second).second).first;
}
bool ok = true;
int pes = 0;
for(int i = 0; i < ans.length(); i++) {
if(ans[i] == '(') pes++;
else pes--;
if(pes < 0) ok = false;
// cout << i << " " << pes << endl;
}
// cout << ans << endl;
if(pes != 0) cout << "impossible" << '\n';
else if(ok == false) cout << "impossible" << '\n';
else {
for(auto x: s) {
cout << ((x.second).second).second + 1 << '\n';
}
}
}
/*
*/
详细
Test #1:
score: 0
Wrong Answer
time: 21ms
memory: 9436kb
input:
50000 ( ( ))))()))()(()))()()()))()(((((()(((()))()(((()))((()(())))))(()( ) ( ) ((( ( ( ( ( ( () ( ) ( )((())()(( )))))( ( ) )) )() ( ) ) )()( ( ( () ( ) ( )()((((())()))())( ( ( )( ( ( (()())()) ) ) ( ( ( )((())))((())))))))))((((()()))()))))))))((()())())) ) )() ) ) ) ) ) ())(())))))()(()((()(())...
output:
impossible
result:
wrong answer you didn't find a solution but jury did