169152025-05-15 18:18:57algoproKét csoportcpp17Időlimit túllépés 0/100393ms14408 KiB
// UUID: 1a39c35b-711e-4ca6-9764-bd76d2b05e77
#include <bits/stdc++.h>
using namespace std;

#define int long long
#define pii pair<int, int>
#define fi first
#define se second

vector<int> v;
vector<bool> cs;
vector<vector<int>> adj;
queue<int> q;

void refresh(int x) {
    v[x]=0;
    for (int u : adj[x]) {
        v[x]+=(cs[x]==cs[u]);
    }
}

signed main() {
	int n;
    cin >> n;
    cs.resize(n+1);
    v.resize(n+1);
    adj.resize(n+1);
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    for (int i = 1; i <= n; i++) {
        int u;
        cin >> u;
        while (u!=0) {
            cout << u << endl;
            if (u>i) {
                adj[i].push_back(u);
                adj[u].push_back(i);
            }
        }
    } // én nem értem mi történik az ideben... teljesen meghibbant
    //az inputon futtatod? igen
    for (int i = 1; i <= n; i++) {
        refresh(i);
        if (v[i]>1)q.push(i);
    }
    
    while (!q.empty()) {
        int x = q.front();
        q.pop();
        refresh(x);
        if (v[x]<=1)continue;
        cs[x]=!cs[x];
        for (int u : adj[x]) {
            refresh(u);
            if (v[u]>1)q.push(u);
        }
    }
    int m = 0;
    vector<int> ansv;
    for (int i = 1; i <= n; i++) {
        if (cs[i]==0) {
            m++;
            ansv.push_back(i);
        }
    }
    cout << m << endl;
    for (int x : ansv)cout << x << ' ';
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base0/100
1Időlimit túllépés0/0372ms4756 KiB
2Időlimit túllépés0/0372ms7832 KiB
3Időlimit túllépés0/3372ms4500 KiB
4Időlimit túllépés0/3372ms4500 KiB
5Időlimit túllépés0/3382ms5028 KiB
6Időlimit túllépés0/3382ms5012 KiB
7Időlimit túllépés0/3384ms4748 KiB
8Időlimit túllépés0/2384ms4704 KiB
9Időlimit túllépés0/3375ms4928 KiB
10Időlimit túllépés0/3377ms4928 KiB
11Időlimit túllépés0/3377ms4672 KiB
12Időlimit túllépés0/3377ms5012 KiB
13Időlimit túllépés0/3382ms5012 KiB
14Időlimit túllépés0/3382ms5272 KiB
15Időlimit túllépés0/6382ms7968 KiB
16Időlimit túllépés0/7384ms8092 KiB
17Időlimit túllépés0/7386ms7748 KiB
18Időlimit túllépés0/6386ms11152 KiB
19Időlimit túllépés0/6386ms10964 KiB
20Időlimit túllépés0/6388ms11156 KiB
21Időlimit túllépés0/6391ms14408 KiB
22Időlimit túllépés0/7391ms13924 KiB
23Időlimit túllépés0/7391ms14088 KiB
24Időlimit túllépés0/7393ms14408 KiB