Task: | Thieves and Prisons |
Sender: | Fredrik Ekholm |
Submission time: | 2019-03-06 16:00:00 +0200 |
Language: | C++ |
Status: | READY |
Result: | 0 |
group | verdict | score |
---|---|---|
#1 | RUNTIME ERROR | 0 |
#2 | WRONG ANSWER | 0 |
#3 | RUNTIME ERROR | 0 |
#4 | WRONG ANSWER | 0 |
#5 | WRONG ANSWER | 0 |
test | verdict | time | group | |
---|---|---|---|---|
#1 | ACCEPTED | 0.01 s | 2, 4, 5 | details |
#2 | WRONG ANSWER | 0.01 s | 2, 4, 5 | details |
#3 | WRONG ANSWER | 0.02 s | 2, 4, 5 | details |
#4 | WRONG ANSWER | 0.01 s | 2, 4, 5 | details |
#5 | WRONG ANSWER | 0.02 s | 2, 4, 5 | details |
#6 | WRONG ANSWER | 0.02 s | 4, 5 | details |
#7 | WRONG ANSWER | 0.01 s | 4, 5 | details |
#8 | WRONG ANSWER | 0.01 s | 4, 5 | details |
#9 | RUNTIME ERROR | 0.02 s | 1, 3, 4, 5 | details |
#10 | RUNTIME ERROR | 0.03 s | 1, 3, 4, 5 | details |
#11 | RUNTIME ERROR | 0.03 s | 1, 3, 4, 5 | details |
#12 | RUNTIME ERROR | 0.02 s | 1, 3, 4, 5 | details |
#13 | RUNTIME ERROR | 0.02 s | 1, 3, 4, 5 | details |
#14 | RUNTIME ERROR | 0.01 s | 1, 3, 4, 5 | details |
#15 | RUNTIME ERROR | 0.02 s | 1, 3, 4, 5 | details |
#16 | RUNTIME ERROR | 0.02 s | 1, 3, 4, 5 | details |
#17 | RUNTIME ERROR | 0.02 s | 1, 2, 3, 4, 5 | details |
#18 | RUNTIME ERROR | 0.01 s | 1, 3, 4, 5 | details |
#19 | RUNTIME ERROR | 0.05 s | 2, 5 | details |
#20 | RUNTIME ERROR | 0.04 s | 2, 5 | details |
#21 | RUNTIME ERROR | 0.04 s | 2, 5 | details |
#22 | RUNTIME ERROR | 0.04 s | 5 | details |
#23 | RUNTIME ERROR | 0.05 s | 5 | details |
#24 | RUNTIME ERROR | 0.02 s | 3, 4, 5 | details |
#25 | RUNTIME ERROR | 0.01 s | 3, 4, 5 | details |
#26 | RUNTIME ERROR | 0.02 s | 3, 4, 5 | details |
#27 | RUNTIME ERROR | 0.01 s | 3, 4, 5 | details |
#28 | RUNTIME ERROR | 0.02 s | 4, 5 | details |
#29 | RUNTIME ERROR | 0.02 s | 4, 5 | details |
#30 | RUNTIME ERROR | 0.02 s | 4, 5 | details |
#31 | RUNTIME ERROR | 0.01 s | 4, 5 | details |
#32 | RUNTIME ERROR | 0.01 s | 2, 4, 5 | details |
#33 | RUNTIME ERROR | 0.03 s | 2, 4, 5 | details |
#34 | RUNTIME ERROR | 0.03 s | 2, 4, 5 | details |
#35 | RUNTIME ERROR | 0.02 s | 2, 4, 5 | details |
#36 | RUNTIME ERROR | 0.05 s | 3, 5 | details |
#37 | RUNTIME ERROR | 0.04 s | 3, 5 | details |
#38 | RUNTIME ERROR | 0.04 s | 3, 5 | details |
#39 | RUNTIME ERROR | 0.04 s | 3, 5 | details |
#40 | RUNTIME ERROR | 0.04 s | 5 | details |
#41 | RUNTIME ERROR | 0.04 s | 5 | details |
#42 | RUNTIME ERROR | 0.05 s | 5 | details |
#43 | RUNTIME ERROR | 0.05 s | 5 | details |
#44 | RUNTIME ERROR | 0.04 s | 2, 5 | details |
#45 | RUNTIME ERROR | 0.05 s | 2, 5 | details |
#46 | RUNTIME ERROR | 0.04 s | 2, 5 | details |
#47 | RUNTIME ERROR | 0.03 s | 2, 5 | details |
Compiler report
In file included from /usr/include/c++/7/cassert:44:0, from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:33, from input/code.cpp:1: input/code.cpp: In function 'void decode()': input/code.cpp:66:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] assert(p.size()==n); ~~~~~~~~^~~
Code
#include <bits/stdc++.h> using namespace std; #define rep(i, a, b) for(ll i = a; i < ll(b); ++i) #define trav(a, x) for(auto& a : x) #define all(x) x.begin(), x.end() #define sz(x) (ll)(x).size() typedef long long ll; typedef pair<ll, ll> pii; typedef vector<ll> vi; ll n; vector<vi> e; void getPostorder(ll v, ll l){ rep(i,0,e[v].size()) if(e[v][i]!=l) getPostorder(e[v][i],v); cout<<v+1<<" "; } void encode(){ e.resize(n); rep(i,0,n-1){ ll a,b; cin>>a>>b; --a; --b; e[a].push_back(b); e[b].push_back(a); } getPostorder(0,-1); cout<<endl; } vi p; vector<vi> c; ll parent(ll v){ if(p[v]==-1){ p[v] = p.size(); p.push_back(-1); c.push_back(vi(1,v)); } return p[v]; } ll children(ll v,ll d){ if(d==0) return v; ll newChild = p.size(); c[v].push_back(newChild); p.push_back(v); c.push_back(vi(0)); return children(newChild, d-1); } void decode(){ ll v = 0; p.push_back(-1); c.push_back(vi(0)); rep(i,0,n-1){ ll dist; cin>>dist; v = parent(v); v = children(v,dist-1); } assert(p.size()==n); rep(i,0,n){ if(p[i]!=-1){ cout<<i+1<<" "<<p[i]+1<<endl; } } } int main() { cin.sync_with_stdio(0); cin.tie(0); cin.exceptions(cin.failbit); ll t; cin>>t>>n; if(t==1) encode(); else decode(); }
Test details
Test 1
Group: 2, 4, 5
Verdict: ACCEPTED
input |
---|
1 1 1 C 1 |
correct output |
---|
1 |
user output |
---|
1 |
Test 2
Group: 2, 4, 5
Verdict: WRONG ANSWER
input |
---|
1 1 1 O 1 |
correct output |
---|
IMPOSSIBLE |
user output |
---|
1 |
Test 3
Group: 2, 4, 5
Verdict: WRONG ANSWER
input |
---|
1 1 2 C 1 C 1 |
correct output |
---|
IMPOSSIBLE |
user output |
---|
1 |
Test 4
Group: 2, 4, 5
Verdict: WRONG ANSWER
input |
---|
1 1 2 C 1 O 1 |
correct output |
---|
IMPOSSIBLE |
user output |
---|
1 |
Test 5
Group: 2, 4, 5
Verdict: WRONG ANSWER
input |
---|
1 1 2 O 1 C 1 |
correct output |
---|
IMPOSSIBLE |
user output |
---|
1 |
Test 6
Group: 4, 5
Verdict: WRONG ANSWER
input |
---|
2 1 2 C 1 C 2 |
correct output |
---|
1 1 |
user output |
---|
(empty) |
Test 7
Group: 4, 5
Verdict: WRONG ANSWER
input |
---|
2 1 2 C 1 O 1 |
correct output |
---|
IMPOSSIBLE |
user output |
---|
(empty) |
Test 8
Group: 4, 5
Verdict: WRONG ANSWER
input |
---|
2 1 2 C 1 O 2 |
correct output |
---|
1 1 |
user output |
---|
(empty) |
Test 9
Group: 1, 3, 4, 5
Verdict: RUNTIME ERROR
input |
---|
3 2 5 C 1 C 2 O 3 C 1 ... |
correct output |
---|
1 1 1 1 1 |
user output |
---|
(empty) |
Error:
code: input/code.cpp:66: void decode(): Assertion `p.size()==n' failed.
Test 10
Group: 1, 3, 4, 5
Verdict: RUNTIME ERROR
input |
---|
3 2 5 C 1 C 2 O 3 O 3 ... |
correct output |
---|
2 1 2 1 1 |
user output |
---|
(empty) |
Error:
code: input/code.cpp:66: void decode(): Assertion `p.size()==n' failed.
Test 11
Group: 1, 3, 4, 5
Verdict: RUNTIME ERROR
input |
---|
3 2 5 C 1 C 2 O 3 O 1 ... |
correct output |
---|
2 1 2 1 1 |
user output |
---|
(empty) |
Error:
code: input/code.cpp:66: void decode(): Assertion `p.size()==n' failed.
Test 12
Group: 1, 3, 4, 5
Verdict: RUNTIME ERROR
input |
---|
3 2 5 C 1 C 2 O 1 O 3 ... |
correct output |
---|
IMPOSSIBLE |
user output |
---|
(empty) |
Error:
code: input/code.cpp:66: void decode(): Assertion `p.size()==n' failed.
Test 13
Group: 1, 3, 4, 5
Verdict: RUNTIME ERROR
input |
---|
3 2 4 C 1 O 2 C 1 O 3 |
correct output |
---|
1 1 1 1 |
user output |
---|
(empty) |
Error:
code: input/code.cpp:66: void decode(): Assertion `p.size()==n' failed.
Test 14
Group: 1, 3, 4, 5
Verdict: RUNTIME ERROR
input |
---|
3 2 4 C 1 O 2 C 2 O 1 |
correct output |
---|
1 1 1 1 |
user output |
---|
(empty) |
Error:
code: input/code.cpp:66: void decode(): Assertion `p.size()==n' failed.
Test 15
Group: 1, 3, 4, 5
Verdict: RUNTIME ERROR
input |
---|
3 2 3 C 1 C 2 C 3 |
correct output |
---|
1 1 1 |
user output |
---|
(empty) |
Error:
code: input/code.cpp:66: void decode(): Assertion `p.size()==n' failed.
Test 16
Group: 1, 3, 4, 5
Verdict: RUNTIME ERROR
input |
---|
3 2 3 O 1 C 2 C 3 |
correct output |
---|
IMPOSSIBLE |
user output |
---|
(empty) |
Error:
code: input/code.cpp:66: void decode(): Assertion `p.size()==n' failed.
Test 17
Group: 1, 2, 3, 4, 5
Verdict: RUNTIME ERROR
input |
---|
2 2 7 C 1 O 2 O 2 O 2 ... |
correct output |
---|
IMPOSSIBLE |
user output |
---|
(empty) |
Error:
code: input/code.cpp:66: void decode(): Assertion `p.size()==n' failed.
Test 18
Group: 1, 3, 4, 5
Verdict: RUNTIME ERROR
input |
---|
4 2 5 C 2 O 3 C 1 O 4 ... |
correct output |
---|
1 1 1 1 1 |
user output |
---|
(empty) |
Error:
code: input/code.cpp:66: void decode(): Assertion `p.size()==n' failed.
Test 19
Group: 2, 5
Verdict: RUNTIME ERROR
input |
---|
100000 100000 100000 C 1 C 2 C 3 C 4 ... |
correct output |
---|
50000 49999 49998 49997 49996 ... |
user output |
---|
(empty) |
Error:
terminate called after throwing an instance of 'std::__ios_failure' what(): basic_ios::...
Test 20
Group: 2, 5
Verdict: RUNTIME ERROR
input |
---|
100000 100000 100000 C 1 C 2 C 3 C 4 ... |
correct output |
---|
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ... |
user output |
---|
(empty) |
Error:
terminate called after throwing an instance of 'std::__ios_failure' what(): basic_ios::...
Test 21
Group: 2, 5
Verdict: RUNTIME ERROR
input |
---|
100000 100000 100000 C 1 C 2 C 3 C 4 ... |
correct output |
---|
20000 20000 20000 20000 20000 ... |
user output |
---|
(empty) |
Error:
terminate called after throwing an instance of 'std::__ios_failure' what(): basic_ios::...
Test 22
Group: 5
Verdict: RUNTIME ERROR
input |
---|
100000 100 100000 C 1 C 2 C 3 C 4 ... |
correct output |
---|
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ... |
user output |
---|
(empty) |
Error:
terminate called after throwing an instance of 'std::__ios_failure' what(): basic_ios::...
Test 23
Group: 5
Verdict: RUNTIME ERROR
input |
---|
100000 99 100000 C 1 C 2 C 3 C 4 ... |
correct output |
---|
IMPOSSIBLE |
user output |
---|
(empty) |
Error:
terminate called after throwing an instance of 'std::__ios_failure' what(): basic_ios::...
Test 24
Group: 3, 4, 5
Verdict: RUNTIME ERROR
input |
---|
500 2 500 C 384 O 62 C 387 O 473 ... |
correct output |
---|
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ... |
user output |
---|
(empty) |
Error:
code: input/code.cpp:66: void decode(): Assertion `p.size()==n' failed.
Test 25
Group: 3, 4, 5
Verdict: RUNTIME ERROR
input |
---|
500 2 500 C 384 O 62 C 387 O 473 ... |
correct output |
---|
1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 ... |
user output |
---|
(empty) |
Error:
code: input/code.cpp:66: void decode(): Assertion `p.size()==n' failed.
Test 26
Group: 3, 4, 5
Verdict: RUNTIME ERROR
input |
---|
500 2 500 C 384 O 62 C 387 O 473 ... |
correct output |
---|
1 1 1 1 1 1 1 1 1 1 1 1 2 1 2 ... |
user output |
---|
(empty) |
Error:
code: input/code.cpp:66: void decode(): Assertion `p.size()==n' failed.
Test 27
Group: 3, 4, 5
Verdict: RUNTIME ERROR
input |
---|
500 2 500 C 384 O 62 C 387 C 473 ... |
correct output |
---|
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ... |
user output |
---|
(empty) |
Error:
code: input/code.cpp:66: void decode(): Assertion `p.size()==n' failed.
Test 28
Group: 4, 5
Verdict: RUNTIME ERROR
input |
---|
500 250 500 C 384 O 62 C 387 O 473 ... |
correct output |
---|
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ... |
user output |
---|
(empty) |
Error:
terminate called after throwing an instance of 'std::__ios_failure' what(): basic_ios::...
Test 29
Group: 4, 5
Verdict: RUNTIME ERROR
input |
---|
500 250 500 C 384 O 62 C 387 O 473 ... |
correct output |
---|
1 1 1 1 1 1 1 1 1 1 1 1 2 1 3 ... |
user output |
---|
(empty) |
Error:
terminate called after throwing an instance of 'std::__ios_failure' what(): basic_ios::...
Test 30
Group: 4, 5
Verdict: RUNTIME ERROR
input |
---|
500 250 500 C 384 O 62 C 387 O 473 ... |
correct output |
---|
1 1 1 1 1 3 2 3 3 2 2 2 5 4 2 ... |
user output |
---|
(empty) |
Error:
terminate called after throwing an instance of 'std::__ios_failure' what(): basic_ios::...
Test 31
Group: 4, 5
Verdict: RUNTIME ERROR
input |
---|
500 250 500 C 384 O 62 C 387 C 473 ... |
correct output |
---|
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ... |
user output |
---|
(empty) |
Error:
terminate called after throwing an instance of 'std::__ios_failure' what(): basic_ios::...
Test 32
Group: 2, 4, 5
Verdict: RUNTIME ERROR
input |
---|
500 500 500 C 384 O 62 C 387 O 473 ... |
correct output |
---|
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ... |
user output |
---|
(empty) |
Error:
terminate called after throwing an instance of 'std::__ios_failure' what(): basic_ios::...
Test 33
Group: 2, 4, 5
Verdict: RUNTIME ERROR
input |
---|
500 500 500 C 384 O 62 C 387 O 473 ... |
correct output |
---|
1 1 1 1 1 1 1 1 1 1 1 1 2 1 3 ... |
user output |
---|
(empty) |
Error:
terminate called after throwing an instance of 'std::__ios_failure' what(): basic_ios::...
Test 34
Group: 2, 4, 5
Verdict: RUNTIME ERROR
input |
---|
500 500 500 C 384 O 62 C 387 O 473 ... |
correct output |
---|
1 1 1 1 2 1 3 3 3 2 2 2 2 4 5 ... |
user output |
---|
(empty) |
Error:
terminate called after throwing an instance of 'std::__ios_failure' what(): basic_ios::...
Test 35
Group: 2, 4, 5
Verdict: RUNTIME ERROR
input |
---|
500 500 500 C 384 O 62 C 387 C 473 ... |
correct output |
---|
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ... |
user output |
---|
(empty) |
Error:
terminate called after throwing an instance of 'std::__ios_failure' what(): basic_ios::...
Test 36
Group: 3, 5
Verdict: RUNTIME ERROR
input |
---|
100000 2 100000 C 89384 O 54062 C 85387 O 53318 ... |
correct output |
---|
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ... |
user output |
---|
(empty) |
Error:
code: input/code.cpp:66: void decode(): Assertion `p.size()==n' failed.
Test 37
Group: 3, 5
Verdict: RUNTIME ERROR
input |
---|
100000 2 100000 C 89384 O 54062 C 85387 O 53318 ... |
correct output |
---|
1 1 1 1 1 1 1 1 1 1 1 1 2 2 1 ... |
user output |
---|
(empty) |
Error:
code: input/code.cpp:66: void decode(): Assertion `p.size()==n' failed.
Test 38
Group: 3, 5
Verdict: RUNTIME ERROR
input |
---|
100000 2 100000 C 89384 O 54062 C 85387 O 53318 ... |
correct output |
---|
1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 ... |
user output |
---|
(empty) |
Error:
code: input/code.cpp:66: void decode(): Assertion `p.size()==n' failed.
Test 39
Group: 3, 5
Verdict: RUNTIME ERROR
input |
---|
100000 2 100000 C 89384 O 54062 C 85387 C 53318 ... |
correct output |
---|
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ... |
user output |
---|
(empty) |
Error:
code: input/code.cpp:66: void decode(): Assertion `p.size()==n' failed.
Test 40
Group: 5
Verdict: RUNTIME ERROR
input |
---|
100000 50000 100000 C 89384 O 54062 C 85387 O 53318 ... |
correct output |
---|
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ... |
user output |
---|
(empty) |
Error:
terminate called after throwing an instance of 'std::__ios_failure' what(): basic_ios::...
Test 41
Group: 5
Verdict: RUNTIME ERROR
input |
---|
100000 50000 100000 C 89384 O 54062 C 85387 O 53318 ... |
correct output |
---|
1 1 1 1 1 1 1 1 1 1 1 1 3 2 1 ... |
user output |
---|
(empty) |
Error:
terminate called after throwing an instance of 'std::__ios_failure' what(): basic_ios::...
Test 42
Group: 5
Verdict: RUNTIME ERROR
input |
---|
100000 50000 100000 C 89384 O 54062 C 85387 O 53318 ... |
correct output |
---|
1 1 1 1 1 3 2 3 3 3 3 3 3 4 5 ... |
user output |
---|
(empty) |
Error:
terminate called after throwing an instance of 'std::__ios_failure' what(): basic_ios::...
Test 43
Group: 5
Verdict: RUNTIME ERROR
input |
---|
100000 50000 100000 C 89384 O 54062 C 85387 C 53318 ... |
correct output |
---|
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ... |
user output |
---|
(empty) |
Error:
terminate called after throwing an instance of 'std::__ios_failure' what(): basic_ios::...
Test 44
Group: 2, 5
Verdict: RUNTIME ERROR
input |
---|
100000 100000 100000 C 89384 O 54062 C 85387 O 53318 ... |
correct output |
---|
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ... |
user output |
---|
(empty) |
Error:
terminate called after throwing an instance of 'std::__ios_failure' what(): basic_ios::...
Test 45
Group: 2, 5
Verdict: RUNTIME ERROR
input |
---|
100000 100000 100000 C 89384 O 54062 C 85387 O 53318 ... |
correct output |
---|
1 1 1 1 1 1 1 1 1 1 1 1 3 2 1 ... |
user output |
---|
(empty) |
Error:
terminate called after throwing an instance of 'std::__ios_failure' what(): basic_ios::...
Test 46
Group: 2, 5
Verdict: RUNTIME ERROR
input |
---|
100000 100000 100000 C 89384 O 54062 C 85387 O 53318 ... |
correct output |
---|
1 1 1 1 2 1 3 3 3 3 3 3 4 5 3 ... |
user output |
---|
(empty) |
Error:
terminate called after throwing an instance of 'std::__ios_failure' what(): basic_ios::...
Test 47
Group: 2, 5
Verdict: RUNTIME ERROR
input |
---|
100000 100000 100000 C 89384 O 54062 C 85387 C 53318 ... |
correct output |
---|
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ... |
user output |
---|
(empty) |
Error:
terminate called after throwing an instance of 'std::__ios_failure' what(): basic_ios::...