168932025-05-15 16:52:29algoproKét csoportcpp17Hibás válasz 15/100389ms41204 KiB
// UUID: 3802a4d3-9b2e-4110-978f-22b8727b7575
#include <bits/stdc++.h>
using namespace std;
#define int int64_t


int32_t main() {
    cin.tie(0), ios::sync_with_stdio(0);
    int n;
    cin >> n;
    vector<vector<int>> g(n);
    for (int i = 0, j; i < n; i++) {
        while (1) {
            cin >> j;
            if (!j) break;
            g[i].push_back(j - 1);
        }
    }

    set<array<int, 2>> s;
    vector<int> cnt(n);
    for (int i = 0; i < n; i++) {
        cnt[i] = g[i].size();
        s.insert({-cnt[i], i});
    }

    while (1) {
        auto [_, i] = *s.begin();
        if (cnt[i] <= 1) break;
        s.erase({-cnt[i], i});
        for (int j : g[i]) {
            s.erase({-cnt[j], j});
            cnt[j]--;
            s.insert({-cnt[j], j});
        }
    }
    cout << s.size() << "\n";
    for (auto [_, x] : s) cout << x + 1 << " ";
    cout << "\n";
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base15/100
1Elfogadva0/01ms316 KiB
2Hibás válasz0/0142ms13876 KiB
3Elfogadva3/31ms316 KiB
4Elfogadva3/31ms500 KiB
5Elfogadva3/31ms316 KiB
6Elfogadva3/31ms316 KiB
7Elfogadva3/31ms316 KiB
8Hibás válasz0/21ms316 KiB
9Hibás válasz0/32ms508 KiB
10Hibás válasz0/32ms316 KiB
11Hibás válasz0/32ms316 KiB
12Hibás válasz0/313ms1716 KiB
13Hibás válasz0/314ms1588 KiB
14Hibás válasz0/316ms1800 KiB
15Hibás válasz0/6140ms13876 KiB
16Hibás válasz0/7153ms13692 KiB
17Hibás válasz0/7174ms14364 KiB
18Hibás válasz0/6294ms27452 KiB
19Időlimit túllépés0/6317ms27192 KiB
20Időlimit túllépés0/6367ms28280 KiB
21Időlimit túllépés0/6389ms39732 KiB
22Időlimit túllépés0/7386ms39732 KiB
23Időlimit túllépés0/7381ms41012 KiB
24Időlimit túllépés0/7384ms41204 KiB