46882023-03-31 08:57:39csaron71Hálózati biztonság (50)cpp17Elfogadva 50/50151ms17820 KiB
#include <bits/stdc++.h>

using namespace std;

int main()
{
    int n, m, k;
    cin >> n >> m >> k;
    vector<vector<int> > elek(n);
    vector<int> fok(n, 0);
    for (int i=0; i<m; i++) {
        int x, y;
        cin >> x >> y;
        x--;
        y--;
        elek[x].push_back(y);
        elek[y].push_back(x);
        fok[x]++;
        fok[y]++;
    }

    queue<int> hibas;
    for (int i=0; i<n; i++) {
        if (fok[i]<k) {
            hibas.push(i);
        }
    }

    while (hibas.size()>0) {
        int x=hibas.front();
        fok[x]=-1;
        hibas.pop();
        for (int sz : elek[x]) {
            fok[sz]--;
            if (fok[sz]==k-1) {
                hibas.push(sz);
            }
        }
    }

    vector<int> veg;
    int ossz=0;
    for (int i=0; i<n; i++) {
        if (fok[i]>=k) {
            veg.push_back(i+1);
            ossz++;
        }
    }

    cout << ossz << "\n";
    for (int sz : veg) {
        cout << sz << " ";
    }

    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base50/50
1Elfogadva0/03ms1688 KiB
2Elfogadva0/083ms9012 KiB
3Elfogadva2/23ms2124 KiB
4Elfogadva2/23ms2372 KiB
5Elfogadva2/23ms2388 KiB
6Elfogadva2/23ms2512 KiB
7Elfogadva2/23ms2736 KiB
8Elfogadva2/23ms2932 KiB
9Elfogadva2/23ms3136 KiB
10Elfogadva2/28ms3780 KiB
11Elfogadva2/23ms3764 KiB
12Elfogadva2/26ms4188 KiB
13Elfogadva3/33ms4292 KiB
14Elfogadva3/37ms4860 KiB
15Elfogadva3/38ms5772 KiB
16Elfogadva3/379ms9148 KiB
17Elfogadva3/38ms4736 KiB
18Elfogadva3/312ms7768 KiB
19Elfogadva3/387ms16040 KiB
20Elfogadva3/3151ms17820 KiB
21Elfogadva3/397ms16620 KiB
22Elfogadva3/32ms4508 KiB