168212025-05-13 17:55:20algoproKét csoportcpp17Időlimit túllépés 73/100388ms21416 KiB
// UUID: f0187ca0-2552-4815-97d4-ec46a6e321e1
#include <bits/stdc++.h>
using namespace std;

vector<vector<int>>g;
vector<int>group,cnt;

void dfs(int x){
    cnt[x]=g[x].size()-cnt[x];
    group[x]=1-group[x];
    for(int y:g[x]){
        if(group[y]==group[x])cnt[y]++;
        else cnt[y]--;
    }
    for(int y:g[x]){
        if(cnt[y]>1)dfs(y);
    }
}

int main() {
	int n;cin>>n;
    g.resize(n+1);group.resize(n+1);cnt.resize(n+1);
    for(int i=1;i<=n;i++){
        while(true){
            int a;cin>>a;
            if(a==0)break;
            g[i].push_back(a);
        }
        cnt[i]=g[i].size();
    }
    for(int i=1;i<=n;i++){
        if(cnt[i]>1)dfs(i);
    }
    vector<int>ans;
    for(int i=1;i<=n;i++)if(group[i]==0)ans.push_back(i);
    cout<<ans.size()<<'\n';
    for(int x:ans)cout<<x<<' ';
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base73/100
1Elfogadva0/01ms316 KiB
2Elfogadva0/0115ms7340 KiB
3Elfogadva3/31ms316 KiB
4Elfogadva3/31ms316 KiB
5Elfogadva3/31ms316 KiB
6Elfogadva3/31ms508 KiB
7Elfogadva3/31ms316 KiB
8Elfogadva2/21ms316 KiB
9Elfogadva3/32ms500 KiB
10Elfogadva3/32ms316 KiB
11Elfogadva3/32ms316 KiB
12Elfogadva3/312ms956 KiB
13Elfogadva3/313ms1076 KiB
14Elfogadva3/314ms1076 KiB
15Elfogadva6/6114ms7364 KiB
16Elfogadva7/7129ms7316 KiB
17Elfogadva7/7141ms7096 KiB
18Elfogadva6/6238ms14244 KiB
19Elfogadva6/6263ms14160 KiB
20Elfogadva6/6291ms13996 KiB
21Időlimit túllépés0/6358ms21416 KiB
22Időlimit túllépés0/7379ms18996 KiB
23Időlimit túllépés0/7388ms18740 KiB
24Időlimit túllépés0/7388ms18740 KiB