198442025-12-25 22:54:02KristófElágazás nélküli úton levő települések (50 pont)cpp17Hibás válasz 22/5028ms1332 KiB
#include <iostream>
#include <vector>
#include <queue>
using namespace std;

int main()
{
    int n,m;
    cin>>n>>m;
    vector<vector<int>> adj(n+1);
    int from,to;
    for(int i=0;i<m;i++)
        {
        cin>>from>>to;
        adj[from].push_back(to);
        adj[to].push_back(from);
        }
    queue<int> q;
    vector<bool> visited(n+1,false);
    for(int i=1;i<=n;i++)
        {
        if(adj[i].size()==1){q.push(i);/*visited[i]=true;*/}
        }
    while(q.size())
        {
        int u=q.front();q.pop();
        for(int x:adj[u])
            {
            if(adj[x].size()>2)
                {
                visited[x]=1;
                continue;
                }
            if(!visited[x])
                {
                visited[x]=true;
                q.push(x);
                }
            }
        }
    int cnt=0;
    for(int i=1;i<=n;i++)
        {
        if(visited[i])
            cnt+=visited[i];
        }

    cout<<cnt<<"\n";
    for(int i=1;i<=n;i++)
        {
        if(visited[i])
            cout<<i<<" ";
        }
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base22/50
1Hibás válasz0/01ms508 KiB
2Elfogadva0/028ms1328 KiB
3Elfogadva2/21ms316 KiB
4Elfogadva2/21ms316 KiB
5Elfogadva2/21ms316 KiB
6Elfogadva2/21ms316 KiB
7Hibás válasz0/21ms316 KiB
8Elfogadva2/23ms316 KiB
9Hibás válasz0/24ms452 KiB
10Elfogadva2/28ms564 KiB
11Elfogadva2/214ms736 KiB
12Elfogadva2/214ms884 KiB
13Hibás válasz0/32ms316 KiB
14Hibás válasz0/34ms500 KiB
15Hibás válasz0/34ms564 KiB
16Hibás válasz0/34ms616 KiB
17Hibás válasz0/312ms792 KiB
18Hibás válasz0/313ms892 KiB
19Hibás válasz0/316ms944 KiB
20Elfogadva3/328ms1244 KiB
21Hibás válasz0/328ms1332 KiB
22Elfogadva3/328ms1252 KiB