53732023-04-26 19:34:29gortomiZárójelekcpp17Elfogadva 100/10019ms9376 KiB
#include <bits/stdc++.h>
using namespace std;
int main()
{
    ios::sync_with_stdio(0);
    cin.tie(0);
    int n;
    cin >> n;
    vector<string> s(n);
    for(int i = 0; i < n; i++) cin >> s[i];
    vector<pair<int, int> > v1, v2;
    vector<int> t(n);
    int sum = 0;
    for(int i = 0; i < n; i++)
    {
        int act = 0, mini = 0;
        for(auto x : s[i])
        {
            if(x == '(') act++;
            else act--;
            mini = min(mini, act);
        }
        mini *= -1;
        if(act > 0)
        {
            v1.push_back({mini, i});
            t[i] = act;
        }
        else
        {
            v2.push_back({mini + act, i});
            t[i] = -act;
        }
        sum += act;
    }
    if(sum != 0)
    {
        cout << "-1";
        return 0;
    }
    int cur = 0;
    vector<int> ans1, ans2;
    sort(v1.begin(), v1.end());
    sort(v2.begin(), v2.end());
    for(auto x : v1)
    {
        if(x.first > cur)
        {
            cout << "-1";
            return 0;
        }
        int y = x.second;
        ans1.push_back(y);
        cur += t[y];
    }
    cur = 0;
    for(auto x : v2)
    {
        if(x.first > cur)
        {
            cout << "-1";
            return 0;
        }
        int y = x.second;
        ans2.push_back(y);
        cur += t[y];
    }
    for(auto x : ans1) cout << x + 1 << " ";
    reverse(ans2.begin(), ans2.end());
    for(auto x : ans2) cout << x + 1 << " ";
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva3ms1832 KiB
2Elfogadva4ms2748 KiB
subtask211/11
3Elfogadva3ms2232 KiB
4Elfogadva3ms2572 KiB
5Elfogadva3ms2532 KiB
6Elfogadva3ms2768 KiB
7Elfogadva3ms3448 KiB
8Elfogadva3ms3552 KiB
subtask36/6
9Elfogadva4ms3784 KiB
10Elfogadva4ms3960 KiB
11Elfogadva4ms3996 KiB
subtask414/14
12Elfogadva4ms4276 KiB
13Elfogadva4ms4112 KiB
subtask523/23
14Elfogadva4ms4412 KiB
15Elfogadva4ms4496 KiB
subtask619/19
16Elfogadva3ms4388 KiB
17Elfogadva4ms4432 KiB
18Elfogadva4ms4500 KiB
19Elfogadva4ms4468 KiB
20Elfogadva4ms4468 KiB
21Elfogadva4ms4428 KiB
22Elfogadva4ms4424 KiB
23Elfogadva4ms4712 KiB
24Elfogadva4ms4640 KiB
subtask727/27
25Elfogadva3ms4540 KiB
26Elfogadva4ms4916 KiB
27Elfogadva4ms4972 KiB
28Elfogadva4ms5180 KiB
29Elfogadva7ms5692 KiB
30Elfogadva19ms9376 KiB
31Elfogadva4ms5404 KiB
32Elfogadva4ms5424 KiB
33Elfogadva4ms5440 KiB
34Elfogadva4ms5668 KiB
35Elfogadva4ms5404 KiB
36Elfogadva6ms6048 KiB
37Elfogadva4ms5428 KiB
38Elfogadva4ms5744 KiB
39Elfogadva9ms7612 KiB
40Elfogadva4ms5604 KiB
41Elfogadva3ms5100 KiB
42Elfogadva4ms5620 KiB
43Elfogadva4ms5704 KiB