137712025-01-08 17:48:47csdavidElágazás nélküli úton levő települések (50 pont)cpp17Hibás válasz 31/5028ms1368 KiB
#include <iostream>
#include <vector>
#include <queue>
//#include <fstream>
using namespace std;

struct telepules{
    vector<int> ut;
    int o=0;
    bool bejart=0;
};

int main()
{
    //ifstream f("be2.txt");
    queue<int> q;
    int n, m, x, y;
    cin >> n >> m;
    telepules a[n];
    for(int i=0; i<m; i++){
        cin >> x >> y;
        --x;
        --y;
        a[x].ut.push_back(y);
        a[x].o++;
        a[y].ut.push_back(x);
        a[y].o++;
    }
    y=0;
    for(int i=0; i<n; i++){
        if(a[i].o==1){
            q.push(i);
            a[i].bejart=1;
        }
    }
    while(!q.empty()){
        x=q.front();
        q.pop();
        for(auto& it:a[x].ut){
            if(!a[it].bejart) {
                y++;
                a[it].bejart=1;
                if(a[it].o==2){
                    q.push(it);
                }
            }
        }
    }
    cout << y << '\n';
    for(int i=0; i<n; i++){
        if(a[i].bejart&&a[i].o>1){
            cout << i+1 << ' ';
        }
    }
    cout << '\n';
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base31/50
1Elfogadva0/01ms316 KiB
2Elfogadva0/028ms1332 KiB
3Hibás válasz0/21ms500 KiB
4Elfogadva2/21ms316 KiB
5Elfogadva2/21ms316 KiB
6Hibás válasz0/21ms316 KiB
7Elfogadva2/21ms316 KiB
8Elfogadva2/23ms452 KiB
9Elfogadva2/24ms568 KiB
10Elfogadva2/28ms564 KiB
11Elfogadva2/214ms832 KiB
12Elfogadva2/214ms856 KiB
13Elfogadva3/32ms316 KiB
14Hibás válasz0/34ms316 KiB
15Hibás válasz0/34ms504 KiB
16Hibás válasz0/34ms624 KiB
17Hibás válasz0/312ms892 KiB
18Hibás válasz0/313ms900 KiB
19Elfogadva3/317ms860 KiB
20Elfogadva3/328ms1296 KiB
21Elfogadva3/328ms1368 KiB
22Elfogadva3/328ms1160 KiB