232132026-01-16 17:30:49horkaElágazás nélküli úton levő települések (50 pont)cpp17Wrong answer 39/5013ms1392 KiB
#include <bits/stdc++.h>
using namespace std;

int main()
{
    ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
    int n; cin>>n;
    int m; cin>>m;
    vector<vector<int>> adj(n+1);
    vector<int> fox(n+1);
    while(m--)
    {
        int a,b; cin>>a>>b;
        fox[a]++,fox[b]++;
        adj[a].push_back(b);
        adj[b].push_back(a);
    }
    queue<int> q;
    vector<bool> jo(n+1),vis(n+1);
    vector<int> p(n+1);
    for(int i=1; i<=n; i++)
        if(fox[i]==1)
    {
        q.push(i);
        vis[i]=1;
    }
    while(!q.empty())
    {
        int cs=q.front();
        q.pop();
        if(fox[cs]>2) continue;
        for(int &i:adj[cs])
        {
           if(vis[i] && fox[i]<=2 && p[cs]!=i) jo[i]=1;
            if(!vis[i])
            {
                jo[i]=1;
                if(fox[i]<=2){
                q.push(i);
                p[i]=cs;
                vis[i]=1;
                }
            }
        }
    }
    vector<int> ans;
    for(int i=1; i<=n; i++)
        if(jo[i]) ans.push_back(i);
    cout<<(int)ans.size()<<"\n";
    for(int i:ans)
        cout<<i<<" ";
    cout<<"\n";
}
SubtaskSumTestVerdictTimeMemory
base39/50
1Accepted0/01ms508 KiB
2Accepted0/013ms1332 KiB
3Wrong answer0/21ms316 KiB
4Accepted2/21ms316 KiB
5Accepted2/21ms508 KiB
6Accepted2/21ms316 KiB
7Accepted2/22ms316 KiB
8Accepted2/22ms316 KiB
9Accepted2/23ms564 KiB
10Accepted2/24ms580 KiB
11Accepted2/27ms748 KiB
12Accepted2/27ms820 KiB
13Accepted3/32ms508 KiB
14Accepted3/33ms724 KiB
15Wrong answer0/32ms564 KiB
16Wrong answer0/33ms564 KiB
17Accepted3/37ms820 KiB
18Wrong answer0/37ms1064 KiB
19Accepted3/38ms1100 KiB
20Accepted3/313ms1228 KiB
21Accepted3/313ms1332 KiB
22Accepted3/313ms1392 KiB