126792024-12-28 12:17:46feheristvanElágazás nélküli úton levő települések (50 pont)python3Futási hiba 0/5016ms3332 KiB
#include <iostream>
#include <set>

using namespace std;

void bejar(int x, set <int> &megold, int fokszam[], int n, int a[][101]){
    int i;
    bool volt[10001] = {0};
    volt[x] = 1;
    do{
        i = 1;
        while(i <= n && a[x][i] != 1){
            i ++;
        }
        if(volt[i] == 1){
            i++;
             while(i <= n && a[x][i] != 1){
            i ++;
        }
        }
        if(i <= n && fokszam[i] != 1){
            megold.insert(i);
            volt[i] = 1;
        }
        x = i;
    }while(fokszam[x] == 2);
}

int main()
{
    vector <int> a;
    int  n, m;
    cin >> n >> m;
    int x, y;
    for(int i = 0; i < m; i ++){
        cin >> x >> y;
        a[x][y] = 1;
        a[y][x] = 1;
    }
    int fokszam[10001] = {0};
    for(int i = 1 ; i <= n; i ++){
        for(int j = 1 ; j <= n; j ++){
            fokszam[i] += a[i][j];
        }
    }
    set <int> halmaz;
    for(int i = 1; i <= n; i ++){
        if(fokszam[i] == 1){
            bejar(i, halmaz, fokszam,n,a);
        }
    }
    cout << halmaz.size() << endl;
    for(auto i : halmaz)
        cout << i << " ";
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base0/50
1Futási hiba0/016ms2868 KiB
2Futási hiba0/016ms2872 KiB
3Futási hiba0/216ms2888 KiB
4Futási hiba0/216ms2872 KiB
5Futási hiba0/216ms2880 KiB
6Futási hiba0/214ms2872 KiB
7Futási hiba0/214ms2872 KiB
8Futási hiba0/214ms3332 KiB
9Futási hiba0/214ms2848 KiB
10Futási hiba0/214ms3052 KiB
11Futási hiba0/214ms2864 KiB
12Futási hiba0/214ms2872 KiB
13Futási hiba0/316ms2896 KiB
14Futási hiba0/314ms2936 KiB
15Futási hiba0/314ms2872 KiB
16Futási hiba0/314ms2824 KiB
17Futási hiba0/314ms2956 KiB
18Futási hiba0/314ms2940 KiB
19Futási hiba0/314ms2900 KiB
20Futási hiba0/316ms3008 KiB
21Futási hiba0/314ms3012 KiB
22Futási hiba0/316ms2928 KiB