149662025-02-10 10:55:51ercseferencHálózati biztonság (50)cpp17Accepted 50/50171ms8480 KiB
#include <bits/stdc++.h>
using namespace std;
struct pontok{int kim; bool van=1; vector<int>halm;};
struct kapcs{int a,b;};
int main()
{
    int n,m,k,x,y; //ifstream f("szamok.txt");
    cin>>n>>m>>k; vector<pontok>pont(n+1);
    vector<kapcs>csat(m);
    for(int i=0; i<m; i++){
        cin>>x>>y; pont[x].kim++; pont[y].kim++;
        pont[x].halm.push_back(i);
        pont[y].halm.push_back(i);
        csat[i].a=x; csat[i].b=y;}
    bool jo=0;
    while(!jo){
        bool rossz=0;
        for(int i=1; i<=n; i++){
            if(pont[i].van && pont[i].kim<k){
                for(int j=0; j<pont[i].halm.size(); j++){
                    pont[csat[pont[i].halm[j]].a].kim--;
                    pont[csat[pont[i].halm[j]].b].kim--;}
                pont[i].van=0; rossz=1;}}
        if(!rossz)jo=1;}
    int db=0;
    for(int i=1; i<=n; i++){if(pont[i].van)db++;}
    cout<<db<<endl;
    for(int i=1; i<=n; i++){if(pont[i].van)cout<<i<<" ";}
    return 0;
}
SubtaskSumTestVerdictTimeMemory
base50/50
1Accepted0/01ms316 KiB
2Accepted0/097ms4660 KiB
3Accepted2/21ms316 KiB
4Accepted2/21ms316 KiB
5Accepted2/21ms316 KiB
6Accepted2/21ms384 KiB
7Accepted2/21ms508 KiB
8Accepted2/21ms316 KiB
9Accepted2/21ms388 KiB
10Accepted2/27ms568 KiB
11Accepted2/22ms316 KiB
12Accepted2/24ms564 KiB
13Accepted3/32ms316 KiB
14Accepted3/34ms820 KiB
15Accepted3/37ms1332 KiB
16Accepted3/382ms3820 KiB
17Accepted3/37ms820 KiB
18Accepted3/310ms2296 KiB
19Accepted3/3109ms6964 KiB
20Accepted3/3171ms8480 KiB
21Accepted3/3115ms7320 KiB
22Accepted3/31ms316 KiB