8230 2024. 01. 12 22:19:18 bovizdb Elágazás nélküli úton levő települések (50 pont) cpp17 Elfogadva 50/50 14ms 6648 KiB
#include <bits/stdc++.h>
 
using namespace std;
 
#define ll long long
#define endl "\n"
#define pll pair<ll, ll>
#define fs first
#define sc second
#define vll vector<ll>
#define v2d vector<vector<ll>>
#define vpll vector<pll>
#define qll queue<ll>
#define stll stack<ll>
#define sll set<ll>
#define mll map<ll, ll>

ll n, m;
v2d g;

void solve()
{
    cin >> n >> m;
    g.resize(n);
    for (ll i = 0; i < m; i++)
    {
        ll in1, in2;
        cin >> in1 >> in2;
        g[in1-1].push_back(in2-1);
        g[in2-1].push_back(in1-1);
    }
    vll v;
    for (ll i = 0; i < n; i++)
    {
        if (g[i].size() == 1)
        {
            v.push_back(i);
        }
    }
    vector<bool>out(n);
    for (ll i : v)
    {
        ll p = i, last = -1;
        while(true)
        {
            if (g[p].size() > 2 || g[p].size() == 0) break;
            if (g[p].size() == 1 && p != i) break;
            if (g[p][0] == last)
            {
                out[g[p][1]] = 1;
                last = p;
                p = g[p][1];
            }
            else
            {
                out[g[p][0]] = 1;
                last = p;
                p = g[p][0];
            }
        }
    }
    cout << count(out.begin(), out.end(), 1) << endl;
    for (ll i = 0; i < n; i++)
    {
        if (out[i] == 1)
        {
            cout << i+1 << " ";
        }
    }
}
 
signed main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(NULL); cout.tie(NULL);
    ll t = 1;
    //cin >> t;
    while(t--)
    {
        solve();
    }
    return 0;
}
Részfeladat Összpont Teszt Verdikt Idő Memória
base 50/50
1 Elfogadva 0/0 3ms 1828 KiB
2 Elfogadva 0/0 14ms 4824 KiB
3 Elfogadva 2/2 3ms 2376 KiB
4 Elfogadva 2/2 3ms 2496 KiB
5 Elfogadva 2/2 3ms 2680 KiB
6 Elfogadva 2/2 3ms 2888 KiB
7 Elfogadva 2/2 3ms 3236 KiB
8 Elfogadva 2/2 4ms 3664 KiB
9 Elfogadva 2/2 4ms 3748 KiB
10 Elfogadva 2/2 6ms 4276 KiB
11 Elfogadva 2/2 8ms 4940 KiB
12 Elfogadva 2/2 8ms 4956 KiB
13 Elfogadva 3/3 3ms 3688 KiB
14 Elfogadva 3/3 4ms 3916 KiB
15 Elfogadva 3/3 4ms 4088 KiB
16 Elfogadva 3/3 4ms 4176 KiB
17 Elfogadva 3/3 8ms 4800 KiB
18 Elfogadva 3/3 8ms 4808 KiB
19 Elfogadva 3/3 9ms 5340 KiB
20 Elfogadva 3/3 14ms 6344 KiB
21 Elfogadva 3/3 14ms 6648 KiB
22 Elfogadva 3/3 14ms 6640 KiB