169082025-05-15 17:59:54algoproKét csoportcpp17Hibás válasz 44/100199ms27764 KiB
// UUID: 2e25b119-77a6-482d-a78c-5c6dde35f7a0
#include <bits/stdc++.h>
 
using namespace std;
 
#define ll long long
#define fs first
#define sc second
#define pb push_back
#define pll pair<ll, ll>
#define vll vector<ll>
#define v2ll vector<vll>
#define pqll priority_queue<ll>

const ll mod = 1e9+7;
const ll inf = LONG_LONG_MAX;

ll n;
v2ll g;
vector<bool> vis, team;

void dfs(ll p) {
    vis[p] = 1;
    for (ll i : g[p]) {
        if(!vis[i]) {
            team[i] = 1-team[p];
            dfs(i);
        }
    }
}

void solve()
{
    cin >> n;
    g.resize(n+1); vis.resize(n+1); team.resize(n+1);
    for (ll i = 1; i <= n; i++) {
        ll a;
        cin >> a;
        while (a) {
            g[i].pb(a);
            cin >> a;
        }
    }
    for (ll i = 1; i <= n; i++)
        if(!vis[i]) dfs(i);
    for (ll i = 1; i <= n; i++) {
        ll cnt = 0;
        for (ll j : g[i])
            if (team[i] == team[j]) cnt++;
        if (cnt > 1) team[i] = 1-team[i];
    }
    cout << count(team.begin(), team.end(), 1) << '\n';
    for (ll i = 1; i <= n; i++) 
        if (team[i]) cout << i << ' ';


    
    /* vector<bool> m(n+1);
    vll v(n+1);
    for (ll i = 1; i <= n; i++) {
        ll a;
        cin >> a;
        while(a) {
            v[a]++;
            if (v[a] > 1) m[a] = 0;
            cin >> a;
        }
        if (v[i] < 2) m[i] = 1;
    }
    cout << count(m.begin(), m.end(), 1) << '\n';
    for (ll i = 1; i <= n; i++)
        if (m[i]) cout << i << ' '; */
}
 
signed main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(NULL); cout.tie(NULL);
    ll t = 1;
    //cin >> t;
    while(t--)
    {
        solve();
    }
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base44/100
1Elfogadva0/01ms316 KiB
2Elfogadva0/052ms6708 KiB
3Elfogadva3/31ms316 KiB
4Elfogadva3/31ms316 KiB
5Elfogadva3/31ms316 KiB
6Elfogadva3/31ms496 KiB
7Elfogadva3/31ms508 KiB
8Elfogadva2/21ms316 KiB
9Elfogadva3/32ms316 KiB
10Hibás válasz0/32ms508 KiB
11Hibás válasz0/32ms316 KiB
12Elfogadva3/36ms1076 KiB
13Elfogadva3/37ms1076 KiB
14Hibás válasz0/37ms1332 KiB
15Elfogadva6/652ms6708 KiB
16Hibás válasz0/757ms6964 KiB
17Hibás válasz0/764ms9228 KiB
18Elfogadva6/6105ms13016 KiB
19Hibás válasz0/6118ms13620 KiB
20Hibás válasz0/6129ms18400 KiB
21Elfogadva6/6163ms19552 KiB
22Hibás válasz0/7178ms20012 KiB
23Hibás válasz0/7193ms25140 KiB
24Hibás válasz0/7199ms27764 KiB