997 2022. 02. 20 07:46:23 Szin Attila Hálózati biztonság (50) cpp14 Elfogadva 50/50 180ms 21336 KiB
#include <bits/stdc++.h>
using namespace std;

int n,m,k;
vector<vector<int> > g;
vector<bool> volt, benne;
vector<int> cnt;

int main()
{
    cin >> n >> m >> k;
    g.resize(n+1);
    volt.resize(n+1, 0);
    benne.resize(n+1, 1);
    cnt.resize(n+1, 0);

    for(int i = 0; i < m; i++) {
        int x,y;
        cin >> x >> y;

        g[x].push_back(y);
        g[y].push_back(x);
    }
    queue<int> s;

    for(int i = 1; i <= n; i++) if(g[i].size() < k) benne[i] = 0, s.push(i);

    while(!s.empty()) {
        int x = s.front();
        s.pop();

        for(int sz : g[x]) {
            cnt[sz]++;
            if(g[sz].size() - cnt[sz] < k && benne[sz]) {
                benne[sz] = 0;
                s.push(sz);
            }
        }
    }

    int ki = 0;
    for(int i = 1; i <= n; i++) if(benne[i]) ki++;
    cout << ki << endl;
    for(int i = 1; i <= n; i++) if(benne[i]) cout << i << ' ';

    return 0;
}
Részfeladat Összpont Teszt Verdikt Idő Memória
base 50/50
1 Elfogadva 0/0 2ms 1804 KiB
2 Elfogadva 0/0 82ms 9956 KiB
3 Elfogadva 2/2 1ms 2976 KiB
4 Elfogadva 2/2 1ms 2976 KiB
5 Elfogadva 2/2 1ms 2984 KiB
6 Elfogadva 2/2 1ms 2988 KiB
7 Elfogadva 2/2 1ms 3000 KiB
8 Elfogadva 2/2 1ms 3008 KiB
9 Elfogadva 2/2 1ms 3016 KiB
10 Elfogadva 2/2 6ms 3444 KiB
11 Elfogadva 2/2 2ms 3168 KiB
12 Elfogadva 2/2 4ms 3412 KiB
13 Elfogadva 3/3 2ms 3404 KiB
14 Elfogadva 3/3 4ms 4012 KiB
15 Elfogadva 3/3 8ms 4972 KiB
16 Elfogadva 3/3 74ms 9448 KiB
17 Elfogadva 3/3 6ms 5112 KiB
18 Elfogadva 3/3 13ms 8344 KiB
19 Elfogadva 3/3 115ms 17536 KiB
20 Elfogadva 3/3 180ms 21336 KiB
21 Elfogadva 3/3 107ms 21248 KiB
22 Elfogadva 3/3 1ms 9092 KiB