Task: | Distances |
Sender: | ScarletS |
Submission time: | 2021-01-30 19:04:50 +0200 |
Language: | C++ (C++17) |
Status: | READY |
Result: | 0 |
group | verdict | score |
---|---|---|
#1 | WRONG ANSWER | 0 |
#2 | WRONG ANSWER | 0 |
test | verdict | time | group | |
---|---|---|---|---|
#1 | WRONG ANSWER | 0.01 s | 1, 2 | details |
#2 | WRONG ANSWER | 0.12 s | 2 | details |
Code
#include <bits/stdc++.h> #define ll long long #define sz(x) (int)(x).size() using namespace std; int dist[101][101], e[101]; bitset<101> done,col; void solve() { int n,x,y; cin>>n; for (int i=1;i<=n;++i) { for (int j=1;j<=n;++j) dist[i][j]=200; dist[i][i]=e[i]=0; done[i]=col[i]=0; } for (int i=1;i<n;++i) { cin>>x>>y; dist[x][y]=1; dist[y][x]=1; ++e[x]; ++e[y]; } for (int k = 1; k <= n; ++k) for (int i = 1; i <= n; ++i) for (int j = 1; j <= n; ++j) dist[i][j] = min(dist[i][j], dist[i][k] + dist[k][j]); for (int i=1;i<=n;++i) if (e[i]==1) x=i; for (int i=1;i<=n;++i) if (dist[1][i]&1) col[i]=1; vector<int> v; v.push_back(x); bool ok; while (1) { x=v.back(); done[x]=1; ok=1; cout<<x<<" "; for (int i=1;i<=n&&ok;++i) if (dist[x][i]<4&&!done[i]&&col[i]) { ok=0; v.push_back(i); break; } for (int i=1;i<=n&&ok;++i) if (dist[x][i]==2&&!done[i]) { ok=0; v.push_back(i); break; } for (int i=1;i<=n&&ok;++i) if (dist[x][i]==3&&!done[i]) { ok=0; v.push_back(i); break; } for (int i=1;i<=n&&ok;++i) if (dist[x][i]==1&&!done[i]) { ok=0; v.push_back(i); break; } if (ok) break; } cout<<"\n"; } int main() { ios_base::sync_with_stdio(0); cin.tie(0); int n; cin>>n; while (n--) solve(); return 0; }
Test details
Test 1
Group: 1, 2
Verdict: WRONG ANSWER
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 |
---|
7 3 4 2 5 6 8 1 6 3 5 7 8 1 4 7 8 3 4 6 1 7 3 6 5 2 1 4 8 6 8 3 2 4 1 ... Truncated |
Test 2
Group: 2
Verdict: WRONG ANSWER
input |
---|
100 100 37 59 81 37 44 81 ... |
correct output |
---|
1 99 82 81 59 5 71 55 17 24 13... |
user output |
---|
92 94 97 54 61 6 34 70 56 2 63... Truncated |