237672026-01-28 20:24:41abcdUtazási irodacpp17Accepted 45/4567ms10152 KiB
#include <bits/stdc++.h>
using namespace std;
using ll=long long;

const int maxn=1e5+1;
vector<int> adj[maxn];
int cnt,p[maxn],last;
vector<int> ans;

void dfs(int v, int par) {
    cnt--;
    last=v;
    if(cnt==0)return;
    for(int to:adj[v]) {
        if(cnt==0)return;
        if(to==par)continue;
        p[to]=v;
        dfs(to,v);
    }
}

int main() {
    ios::sync_with_stdio(false);cin.tie(0);
    ll n,k;cin>>n>>k;
    for(int i=1;i<n;i++) {
        int a,b;cin>>a>>b;
        adj[a].push_back(b);
        adj[b].push_back(a);
    }
    for(int i=1;i<=n;i++)sort(adj[i].begin(),adj[i].end());
    int root=(k-1)/n+1;
    cnt=k%n;
    if(!cnt)cnt=n;
    dfs(root,-1);
    while(last){
        ans.push_back(last);
        last=p[last];
    }
    reverse(ans.begin(),ans.end());
    for(int x:ans)cout<<x<<' ';
    cout<<'\n';
}
SubtaskSumTestVerdictTimeMemory
base45/45
1Accepted0/03ms2612 KiB
2Accepted0/08ms3124 KiB
3Accepted2/23ms2612 KiB
4Accepted2/23ms2612 KiB
5Accepted1/13ms2612 KiB
6Accepted2/23ms2780 KiB
7Accepted2/24ms2868 KiB
8Accepted1/14ms2868 KiB
9Accepted2/267ms10152 KiB
10Accepted2/250ms6596 KiB
11Accepted1/154ms8376 KiB
12Accepted2/248ms6196 KiB
13Accepted2/248ms6632 KiB
14Accepted2/261ms6304 KiB
15Accepted2/257ms6408 KiB
16Accepted2/246ms6844 KiB
17Accepted3/352ms6332 KiB
18Accepted2/246ms6360 KiB
19Accepted2/254ms6404 KiB
20Accepted2/257ms6452 KiB
21Accepted3/352ms6192 KiB
22Accepted3/348ms6196 KiB
23Accepted3/352ms6452 KiB
24Accepted1/157ms6464 KiB
25Accepted1/148ms6708 KiB