6378 2023. 11. 26 10:28:19 horvathabel Utazási iroda cpp17 Elfogadva 45/45 68ms 39520 KiB
#include <bits/stdc++.h>
using namespace std;
using ll=long long;
ll n,k;
vector<ll> g[100001];
vector<ll> p;
ll cnt=0;
vector<bool> seen;
void dfs(ll x,ll k, ll s){
    cnt++;
    seen[x]=true;
    if (cnt==k){
        int most=x;
        vector<ll> ans;
        while (most!=0){
            ans.push_back(most);
            most=p[most];
        }
        reverse(ans.begin(), ans.end());
        for (ll c:ans) cout<<c<<" ";
        return;
    }
    for (ll edge:g[x]){
        if (!seen[edge]){
            p[edge]=x;
            dfs(edge,k,s);
        }
    }

}
int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    cin>>n>>k;
    seen.resize(n+1,false);
    p.resize(n+1,0);
    for (ll i=1; i<n;i++){
        ll a,b;
        cin>>a>>b;
        g[a].push_back(b);
        g[b].push_back(a);
    }
    for (ll i=1; i<=n;i++) sort(g[i].begin(), g[i].end());
    k+=n;
    ll z=k/n;
    if (k%n==0){
        z--;
    }
    cnt=(z-1)*n;
    dfs(z,k-n,z);
    return 0;
}
Részfeladat Összpont Teszt Verdikt Idő Memória
base 45/45
1 Elfogadva 0/0 4ms 6600 KiB
2 Elfogadva 0/0 9ms 8256 KiB
3 Elfogadva 2/2 4ms 7024 KiB
4 Elfogadva 2/2 4ms 7328 KiB
5 Elfogadva 1/1 4ms 7692 KiB
6 Elfogadva 2/2 4ms 7632 KiB
7 Elfogadva 2/2 6ms 7912 KiB
8 Elfogadva 1/1 4ms 8112 KiB
9 Elfogadva 2/2 63ms 29812 KiB
10 Elfogadva 2/2 63ms 31808 KiB
11 Elfogadva 1/1 57ms 26252 KiB
12 Elfogadva 2/2 57ms 21804 KiB
13 Elfogadva 2/2 52ms 24128 KiB
14 Elfogadva 2/2 52ms 24972 KiB
15 Elfogadva 2/2 68ms 25812 KiB
16 Elfogadva 2/2 52ms 28088 KiB
17 Elfogadva 3/3 56ms 28940 KiB
18 Elfogadva 2/2 56ms 29624 KiB
19 Elfogadva 2/2 56ms 30840 KiB
20 Elfogadva 2/2 57ms 32704 KiB
21 Elfogadva 3/3 54ms 32964 KiB
22 Elfogadva 3/3 56ms 34300 KiB
23 Elfogadva 3/3 56ms 36108 KiB
24 Elfogadva 1/1 56ms 37512 KiB
25 Elfogadva 1/1 54ms 39520 KiB