53552023-04-26 11:16:36kohumarkZárójelekcpp17Hibás válasz 14/10028ms6492 KiB
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;

bool ren(pair<int,pair<int,int>> a, pair<int,pair<int,int>> b){
	if(a.second.first-a.second.second>0&&b.second.first-b.second.second>0){ 
		if(a.second.second == b.second.second) return a.second.first > b.second.first;
		return a.second.second < b.second.second;
	}
	else if(a.second.first-a.second.second<0&&b.second.first-b.second.second<0){
		if(a.second.second == b.second.second) return a.second.first > b.second.first;
		return a.second.second < b.second.second;
	}
	return a.second.first-a.second.second > b.second.first-b.second.second;
}

int main(){
	int n; cin >> n;
	vector<pair<int,pair<int,int>>> t;
	for(int i=0; i<n; i++){
		string x; cin >> x;
		pair<int,int> act;
		for(int j=0; j<(int)x.length(); j++){
			if(x[j]=='(') act.first++;
			else{
				if(act.first>0) act.first--;
				else{
					act.second++;
				}
			}
		}
		t.push_back(make_pair(i+1,act));
	}
	sort(t.begin(), t.end(), ren);
	for(auto it=t.begin(); it!=t.end(); it++) cout << (*it).first << ' ';
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva3ms1812 KiB
2Elfogadva8ms2176 KiB
subtask20/11
3Elfogadva3ms2084 KiB
4Hibás válasz3ms2212 KiB
5Hibás válasz3ms2428 KiB
6Elfogadva3ms2508 KiB
7Elfogadva8ms3016 KiB
8Hibás válasz8ms2976 KiB
subtask30/6
9Elfogadva8ms3020 KiB
10Hibás válasz8ms3236 KiB
11Hibás válasz8ms3448 KiB
subtask414/14
12Elfogadva8ms3404 KiB
13Elfogadva8ms3476 KiB
subtask50/23
14Hibás válasz8ms3732 KiB
15Hibás válasz8ms3940 KiB
subtask60/19
16Hibás válasz8ms3808 KiB
17Hibás válasz8ms3928 KiB
18Elfogadva8ms4044 KiB
19Hibás válasz8ms4296 KiB
20Hibás válasz8ms4420 KiB
21Elfogadva7ms4828 KiB
22Elfogadva6ms4920 KiB
23Elfogadva7ms4876 KiB
24Elfogadva7ms5004 KiB
subtask70/27
25Hibás válasz8ms4804 KiB
26Hibás válasz8ms4848 KiB
27Hibás válasz9ms4864 KiB
28Hibás válasz9ms4872 KiB
29Hibás válasz13ms5376 KiB
30Hibás válasz28ms6492 KiB
31Hibás válasz8ms4868 KiB
32Hibás válasz9ms5188 KiB
33Hibás válasz8ms4864 KiB
34Hibás válasz9ms5040 KiB
35Hibás válasz8ms4796 KiB
36Hibás válasz10ms5044 KiB
37Hibás válasz8ms4880 KiB
38Hibás válasz8ms4888 KiB
39Hibás válasz16ms5756 KiB
40Elfogadva6ms4920 KiB
41Elfogadva4ms4992 KiB
42Elfogadva7ms5316 KiB
43Elfogadva6ms5068 KiB