81602024-01-12 14:57:58ZsBalazsTitkos sorozatcpp17Hibás válasz 0/40326ms130116 KiB
#include <bits/stdc++.h>
using namespace std;

vector<vector<int>> graph;
vector<int> megoldas;
vector<int> mutat;

void bejar(int current) {
    if (mutat[current] == -1) return;
    
    mutat[current] = -1;
    
    for (int szom : graph[current]) {
        if (megoldas[szom] < megoldas[current]+1) {
            megoldas[szom] = megoldas[current]+1;
        }
        mutat[szom]--;
    }
}

int main() {
    int n;
    cin >> n;
    
    graph.resize(n);
    
    for (int i = 0; n > i; i++) {
        int temp;
        cin >> temp;
        
        if (temp != -1) {
            temp--;
            
            graph[i].push_back(temp);
            
            for (int j = i+1; temp > j; j++) {
                graph[j].push_back(i);
            }
        } else {
            for (int j = i+1; n > j; j++) {
                graph[j].push_back(i);
            }
        }
    }
    
    cout << 1 << endl;
    return 0;
    
    int counter = 0;
    while (counter < n) {
        for (int i = 0; n > i; i++) {
            if (mutat[i] == 0) {
                bejar(i);
                counter++;
            }
        }
    }
    
    // megoldas, index
    vector<pair<int, int>> sor;
    
    for (int i = 0; n > i; i++) {
        sor.push_back({megoldas[i], i});
    }
    
    sort(sor.begin(), sor.end());
    
    vector<int> ans(n, 0);
    
    int next = 1;
    for (int i = 0; n > i; i++) {
        int index = sor[i].second;
        
        ans[index] = next;
        
        next++;
    }
    
    for (int a : ans) {
        cout << a << " ";
    }
    cout << endl;
    
	return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base0/40
1Hibás válasz0/03ms1872 KiB
2Hibás válasz0/028ms7888 KiB
3Hibás válasz0/13ms2488 KiB
4Hibás válasz0/13ms2556 KiB
5Hibás válasz0/23ms2724 KiB
6Hibás válasz0/13ms3152 KiB
7Hibás válasz0/13ms3360 KiB
8Hibás válasz0/23ms3588 KiB
9Hibás válasz0/272ms23024 KiB
10Hibás válasz0/2238ms117728 KiB
11Hibás válasz0/261ms17976 KiB
12Hibás válasz0/259ms16292 KiB
13Hibás válasz0/257ms15708 KiB
14Hibás válasz0/254ms15436 KiB
15Hibás válasz0/252ms14852 KiB
16Hibás válasz0/352ms14636 KiB
17Hibás válasz0/352ms14868 KiB
18Hibás válasz0/350ms14728 KiB
19Hibás válasz0/348ms14724 KiB
20Hibás válasz0/346ms14660 KiB
21Futási hiba0/1291ms130116 KiB
22Futási hiba0/1305ms130100 KiB
23Futási hiba0/1326ms129976 KiB