53192023-04-25 21:32:01rmlanZárójelekcpp14Hibás válasz 43/10024ms6600 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-a.b > b.r-b.b;
}

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
1Elfogadva3ms1808 KiB
2Elfogadva8ms2240 KiB
subtask20/11
3Elfogadva3ms2224 KiB
4Hibás válasz3ms2464 KiB
5Elfogadva3ms2680 KiB
6Elfogadva3ms2888 KiB
7Elfogadva7ms3452 KiB
8Elfogadva7ms3416 KiB
subtask36/6
9Elfogadva8ms3196 KiB
10Elfogadva8ms3196 KiB
11Elfogadva8ms3456 KiB
subtask414/14
12Elfogadva8ms3424 KiB
13Elfogadva8ms3412 KiB
subtask523/23
14Elfogadva8ms3552 KiB
15Elfogadva8ms3604 KiB
subtask60/19
16Elfogadva7ms3600 KiB
17Elfogadva8ms3608 KiB
18Elfogadva8ms3972 KiB
19Elfogadva8ms3912 KiB
20Elfogadva8ms4168 KiB
21Hibás válasz6ms4120 KiB
22Hibás válasz6ms4380 KiB
23Hibás válasz6ms4580 KiB
24Hibás válasz6ms4544 KiB
subtask70/27
25Elfogadva7ms4480 KiB
26Elfogadva8ms4484 KiB
27Elfogadva8ms4584 KiB
28Elfogadva8ms4596 KiB
29Elfogadva10ms4944 KiB
30Elfogadva24ms6600 KiB
31Elfogadva8ms4548 KiB
32Elfogadva8ms4708 KiB
33Elfogadva8ms4516 KiB
34Elfogadva9ms4684 KiB
35Elfogadva8ms4468 KiB
36Elfogadva9ms4724 KiB
37Elfogadva7ms4600 KiB
38Elfogadva8ms4620 KiB
39Elfogadva14ms5576 KiB
40Hibás válasz6ms4764 KiB
41Hibás válasz4ms4812 KiB
42Hibás válasz7ms4892 KiB
43Hibás válasz7ms4768 KiB