23662023-01-11 14:17:25rennTitkos sorozatcpp11Elfogadva 40/4021ms5656 KiB
#include <bits/stdc++.h>
using namespace std;

vector<bool> volt;

int main() {
        cin.tie(0); cout.tie(0); ios::sync_with_stdio(0);
	int n;
	cin >> n;
	vector<int> sor(n);
	for (int i = 0; i < n; i++) {
		cin >> sor[i];
	}
	int legk = 1;
	int legn = n;
	volt.resize(n);
	vector<int> mo(n);
	for (int i = 0; i < n; i++) {
		if (sor[i] == -1) {
			mo[i] = legn;
			legn--;
		} else {
			mo[i] = legk + sor[i] - i - 2;
			volt[mo[i]] = 1;
			if (mo[i] == legk) {
				legk++;
				while (volt[legk] == 1) {
					legk++;
				}
			}
		}
		cout << mo[i] << " ";
	}
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base40/40
1Elfogadva0/03ms1824 KiB
2Elfogadva0/012ms2844 KiB
3Elfogadva1/12ms2228 KiB
4Elfogadva1/12ms2444 KiB
5Elfogadva2/22ms2524 KiB
6Elfogadva1/12ms2748 KiB
7Elfogadva1/12ms2948 KiB
8Elfogadva2/22ms3156 KiB
9Elfogadva2/221ms4524 KiB
10Elfogadva2/221ms4536 KiB
11Elfogadva2/221ms4740 KiB
12Elfogadva2/221ms4984 KiB
13Elfogadva2/221ms5056 KiB
14Elfogadva2/221ms5212 KiB
15Elfogadva2/221ms5348 KiB
16Elfogadva3/321ms5448 KiB
17Elfogadva3/321ms5444 KiB
18Elfogadva3/321ms5452 KiB
19Elfogadva3/321ms5564 KiB
20Elfogadva3/320ms5472 KiB
21Elfogadva1/121ms5508 KiB
22Elfogadva1/121ms5504 KiB
23Elfogadva1/121ms5656 KiB