4289 2023. 03. 22 12:42:51 Bence Hálózati biztonság (50) cpp11 Elfogadva 50/50 153ms 18604 KiB
#include <iostream>
#include <vector>
#include <queue>
using namespace std;
queue <int> s;

struct adat
{
    int db;
    bool lat;
    vector <int> sz;
};
int n,m,k,i,akt,a,b;

int main()
{
    cin>>n>>m>>k;
    vector <adat> x(n+1);

    for(i=1; i<=m; ++i)
    {
        cin>>a>>b;
        x[a].sz.push_back(b);
        x[b].sz.push_back(a);
    }

    for(i=1; i<=n; ++i)
    {
        x[i].db=x[i].sz.size();
        if(x[i].db<k)
        {
            s.push(i);
            x[i].lat=1;
        }
    }
    while(!s.empty())
    {
        akt=s.front();
        s.pop();
        for(auto &e:x[akt].sz)
        {
            --x[e].db;
            if(x[e].db<k && x[e].lat==0)
            {
                x[e].lat=1;
                s.push(e);
            }
        }
    }

    for(i=1; i<=n; ++i)
    {
        if(x[i].lat==0)
        {
            s.push(i);
        }
    }
    cout<<s.size()<<'\n';

    while(!s.empty())
    {
        cout<<s.front()<<' ';
        s.pop();
    }

    return 0;
}
Részfeladat Összpont Teszt Verdikt Idő Memória
base 50/50
1 Elfogadva 0/0 3ms 1808 KiB
2 Elfogadva 0/0 87ms 9332 KiB
3 Elfogadva 2/2 3ms 2336 KiB
4 Elfogadva 2/2 3ms 2548 KiB
5 Elfogadva 2/2 3ms 2768 KiB
6 Elfogadva 2/2 3ms 2880 KiB
7 Elfogadva 2/2 3ms 2980 KiB
8 Elfogadva 2/2 3ms 3208 KiB
9 Elfogadva 2/2 3ms 3300 KiB
10 Elfogadva 2/2 8ms 3564 KiB
11 Elfogadva 2/2 3ms 3656 KiB
12 Elfogadva 2/2 6ms 4160 KiB
13 Elfogadva 3/3 3ms 4112 KiB
14 Elfogadva 3/3 7ms 5020 KiB
15 Elfogadva 3/3 8ms 6200 KiB
16 Elfogadva 3/3 79ms 9688 KiB
17 Elfogadva 3/3 8ms 5304 KiB
18 Elfogadva 3/3 12ms 8536 KiB
19 Elfogadva 3/3 90ms 16916 KiB
20 Elfogadva 3/3 153ms 18604 KiB
21 Elfogadva 3/3 100ms 17392 KiB
22 Elfogadva 3/3 3ms 4536 KiB