168032025-05-13 17:07:50algoproKét csoportcpp17Időlimit túllépés 73/100372ms6452 KiB
// UUID: 57100d2b-0c77-42b3-a6d9-28532cacabe8
#include <bits/stdc++.h>
using namespace std;

int main() {
    int n;
    cin >> n;
    vector<array<int, 3>> a(n + 2, {n + 1, n + 1, n + 1});
    vector<int> t(n + 2, 0);
    t[n + 1] = -1;
    for(int i = 1; i <= n; i++){
        for(int j = 0; j < 4; j++){
            int b;
            cin >> b;
            if(b != 0) a[i][j] = b;
            else break;
        }
    }
    for(int i = 1; i <= n; i++){
        int bad = i;
        t[i] = 0;
        while(true){
            int s = 0;
            for(int j = 0; j < 3; j++){
                s += (t[a[bad][j]] == t[bad]);
            }
            if(s >= 2){
                t[bad] = 1 - t[bad];
                for(int j = 0; j < 3; j++){
                    if(t[a[bad][j]] == t[bad]){
                        bad = a[bad][j];
                        break;
                    }
                }
            }
            else break;
        }
    }
    int ans = 0;
    for(int i = 1; i <= n; i++){
        if(t[i] == 0) ans++;  
    }
    cout << ans << "\n";
    for(int i = 1; i <= n; i++){
        if(t[i] == 0) cout << i << " ";  
    }
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base73/100
1Elfogadva0/01ms316 KiB
2Elfogadva0/097ms2348 KiB
3Elfogadva3/31ms316 KiB
4Elfogadva3/31ms316 KiB
5Elfogadva3/31ms316 KiB
6Elfogadva3/31ms316 KiB
7Elfogadva3/31ms316 KiB
8Elfogadva2/21ms316 KiB
9Elfogadva3/32ms316 KiB
10Elfogadva3/32ms316 KiB
11Elfogadva3/32ms316 KiB
12Elfogadva3/39ms568 KiB
13Elfogadva3/310ms556 KiB
14Elfogadva3/310ms560 KiB
15Elfogadva6/697ms2356 KiB
16Elfogadva7/7108ms2228 KiB
17Elfogadva7/7119ms2100 KiB
18Elfogadva6/6201ms4308 KiB
19Elfogadva6/6224ms4056 KiB
20Elfogadva6/6246ms4148 KiB
21Időlimit túllépés0/6303ms6452 KiB
22Időlimit túllépés0/7342ms6196 KiB
23Időlimit túllépés0/7372ms5940 KiB
24Időlimit túllépés0/7372ms5940 KiB