CSES - Datatähti Open 2021 - Results
Submission details
Task:Distances
Sender:lookcook
Submission time:2021-01-30 18:19:03 +0200
Language:C++17
Status:READY
Result:100
Feedback
groupverdictscore
#1ACCEPTED29
#2ACCEPTED71
Test results
testverdicttimegroup
#1ACCEPTED0.01 s1, 2details
#2ACCEPTED0.01 s2details

Code

#include <bits/stdc++.h>

#define int long long

using namespace std;

const int maxn = 105;
vector<int> adj[maxn];
queue<int> q;

void dfs(int u, int par, int cur) {
    int childs = adj[u].size()-1;
    if (u == par) childs++;
    if (cur == 1) {
        q.push(u);
        for (int v : adj[u]) {
            if (v == par) continue;
            dfs(v,u,0);
        }
    } else {
        for (int v : adj[u]) {
            if (v == par) continue;
            dfs(v,u,cur+1);
        }
        q.push(u);
    }
}

signed main() {
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    int t;
    cin >> t;
    while (t--) {
        int n;
        cin >> n;
        for (int i = 1; i <= n; i++) adj[i] = {};
        for (int i = 0; i < n-1; i++) {
            int u, v;
            cin >> u >> v;
            adj[u].push_back(v);
            adj[v].push_back(u);
        }
        dfs(1,1,0);
        while (!q.empty()) {
            int u = q.front();
            q.pop();
            cout << u << ' ';
        }
        cout << '\n';
    }
}
/*

*/

Test details

Test 1

Group: 1, 2

Verdict: ACCEPTED

input
100
8
5 2
2 3
3 7
...

correct output
1 8 2 5 6 7 3 4 
1 7 2 8 3 6 4 5 
1 4 6 2 7 5 8 3 
1 8 3 2 4 7 6 5 
1 6 4 7 5 2 3 8 
...

user output
4 3 5 6 2 7 8 1 
3 8 2 7 5 6 4 1 
4 3 8 7 2 5 6 1 
6 3 8 2 4 7 5 1 
6 8 3 2 5 7 4 1 
...

Test 2

Group: 2

Verdict: ACCEPTED

input
100
100
37 59
81 37
44 81
...

correct output
1 99 82 81 59 5 71 55 17 24 13...

user output
22 60 44 37 17 5 55 71 59 24 3...