53102023-04-25 19:20:39rmlanZárójelekcpp14Hibás válasz 43/10024ms6396 KiB
#include<bits/stdc++.h>
using namespace std;

struct z{
    int b=0,r=0,id;
};
bool comp(z a, z b){
    return a.r < b.r;
}
bool comp2(z a, z b){
    return a.r > b.r;
}

int main(){
    int n;
    cin >> n;
    vector<z> pos,neg;
    for(int i = 1; i <= n; i++){
        string s;
        cin >> s;
        z c;
        c.id = i;
        for(int j = 0; j < s.length(); j++){
            if(s[j]=='('){
                c.b++;
            }else{
                c.b--;
            }
            c.r = min(c.r, c.b);
        }
        c.r = abs(c.r);
        if(c.b >= 0){
            pos.push_back(c);
        }else{
            neg.push_back(c);
        }

    }
    sort(pos.begin(), pos.end(), comp);
    sort(neg.begin(), neg.end(), comp2);
    int b=0;
    vector<int> ans;
    for(z i:pos){
        if(i.r > b){
            cout << -1;
            return 0;
        }
        ans.push_back(i.id);
        b+=i.b;
    }
    for(z i:neg){
        if(i.r > b || b < 0){
            cout << -1;
            return 0;
        }
        ans.push_back(i.id);
        b+=i.b;
    }
    if(b != 0){
        cout << "-1";
        return 0;

    }
    for(int i:ans){
        cout << i << " ";
    }

}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva3ms1812 KiB
2Elfogadva8ms2232 KiB
subtask20/11
3Elfogadva3ms2380 KiB
4Hibás válasz3ms2544 KiB
5Elfogadva3ms2752 KiB
6Elfogadva3ms2848 KiB
7Elfogadva8ms3440 KiB
8Elfogadva8ms3400 KiB
subtask36/6
9Elfogadva8ms3224 KiB
10Elfogadva8ms3220 KiB
11Elfogadva8ms3268 KiB
subtask414/14
12Elfogadva8ms3544 KiB
13Elfogadva8ms3760 KiB
subtask523/23
14Elfogadva8ms3756 KiB
15Elfogadva8ms4072 KiB
subtask60/19
16Elfogadva7ms4004 KiB
17Elfogadva8ms4012 KiB
18Elfogadva8ms4028 KiB
19Elfogadva8ms4240 KiB
20Elfogadva8ms4236 KiB
21Hibás válasz6ms4236 KiB
22Hibás válasz6ms4508 KiB
23Hibás válasz6ms4464 KiB
24Hibás válasz6ms4416 KiB
subtask70/27
25Elfogadva7ms4324 KiB
26Elfogadva8ms4364 KiB
27Elfogadva8ms4400 KiB
28Elfogadva8ms4416 KiB
29Elfogadva10ms4728 KiB
30Elfogadva24ms6396 KiB
31Elfogadva8ms4404 KiB
32Elfogadva9ms4564 KiB
33Elfogadva8ms4384 KiB
34Elfogadva9ms4576 KiB
35Elfogadva8ms4352 KiB
36Elfogadva10ms4828 KiB
37Elfogadva8ms4796 KiB
38Elfogadva8ms5016 KiB
39Elfogadva14ms5872 KiB
40Hibás válasz4ms5016 KiB
41Hibás válasz3ms4996 KiB
42Hibás válasz7ms5196 KiB
43Hibás válasz6ms5024 KiB