Code Submission Evaluation System Login

NOI 2019 Open

Start:N/A
End:N/A
 

Tasks | Scoreboard | Statistics


CSES - NOI 2019 Open - Results
History
0:52:15100
Task:Distance Code
Sender:pwild
Submission time:2019-03-09 22:56:29
Language:C++
Status:READY
Score:100

Feedback

groupverdictscore
#1ACCEPTED21
#2ACCEPTED47
#3ACCEPTED32

Test results

testverdicttime (s)group
#1ACCEPTED0.02 / 1.001, 2, 3details
#2ACCEPTED0.01 / 1.001, 2, 3details
#3ACCEPTED0.01 / 1.001, 2, 3details
#4ACCEPTED0.02 / 1.001, 2, 3details
#5ACCEPTED0.03 / 1.001, 2, 3details
#6ACCEPTED0.02 / 1.001, 2, 3details
#7ACCEPTED0.01 / 1.001, 2, 3details
#8ACCEPTED0.03 / 1.001, 2, 3details
#9ACCEPTED0.02 / 1.001, 2, 3details
#10ACCEPTED0.02 / 1.001, 2, 3details
#11ACCEPTED0.02 / 1.001, 2, 3details
#12ACCEPTED0.02 / 1.002, 3details
#13ACCEPTED0.03 / 1.002, 3details
#14ACCEPTED0.03 / 1.002, 3details
#15ACCEPTED0.03 / 1.002, 3details
#16ACCEPTED0.12 / 1.003details
#17ACCEPTED0.13 / 1.003details
#18ACCEPTED0.14 / 1.003details
#19ACCEPTED0.13 / 1.003details
#20ACCEPTED0.01 / 1.001, 2, 3details

Code

#include <bits/stdc++.h>
using namespace std;

typedef long long ll;
typedef vector<ll> vl;
typedef vector<vl> vvl;
typedef pair<ll,ll> pll;
typedef vector<bool> vb;
const ll oo = 0x3f3f3f3f3f3f3f3f;
const double eps = 1e-9;
#define sz(c) ll((c).size())
#define all(c) begin(c), end(c)
#define FOR(i,a,b) for (ll i = (a); i < (b); i++)
#define FORD(i,a,b) for (ll i = (b)-1; i >= (a); i--)
#define mp make_pair
#define mt make_tuple
#define pb push_back
#define eb emplace_back
#define xx first
#define yy second
#define has(c,i) ((c).find(i) != end(c))
#define TR(X) ({ if(1) cerr << "TR: " << (#X) << " = " << (X) << endl; })

void dfs(ll i, ll p, vvl &adj) {
	for (ll j: adj[i]) {
		if (j == p) continue;
		dfs(j,i,adj);
	}
	cout << i+1 << " ";
}

void encoder() {
	ll n; cin >> n;
	vvl adj(n);
	FOR(i,1,n) {
		ll a, b;
		cin >> a >> b;
		a--, b--;
		adj[a].pb(b);
		adj[b].pb(a);
	}
	dfs(0,-1,adj);
	cout << endl;
}

void decoder() {
	ll n; cin >> n;
	vl dist(n-1);
	FOR(i,0,n-1) cin >> dist[i];

	vl p(n,-1);
	FORD(i,0,n-1) {
		ll j = i+1;
		while (dist[i]-- > 1) j = p[j];
		p[i] = j;
		cout << i+1 << " " << j+1 << endl;
	}
}

int main() {
	ios_base::sync_with_stdio(false);
	cin.tie(NULL);
	
	ll mode; cin >> mode;
	if (mode == 1) encoder();
	else decoder();
}

Test details

Test 1

Group: 1, 2, 3

Verdict: ACCEPTED

input
1
2
2 1
view   save

correct output
(no output)
view   save

user output
1 2
view   save

Test 2

Group: 1, 2, 3

Verdict: ACCEPTED

input
1
3
3 1
2 1
view   save

correct output
(no output)
view   save

user output
2 3
1 3
view   save

Test 3

Group: 1, 2, 3

Verdict: ACCEPTED

input
1
4
3 2
2 1
4 1
view   save

correct output
(no output)
view   save

user output
3 4
2 4
1 2
view   save

Test 4

Group: 1, 2, 3

Verdict: ACCEPTED

input
1
4
2 3
3 4
1 3
view   save

correct output
(no output)
view   save

user output
3 4
2 3
1 3
view   save

Test 5

Group: 1, 2, 3

Verdict: ACCEPTED

input
1
5
3 5
4 1
1 3
4 2
view   save

correct output
(no output)
view   save

user output
4 5
3 4
2 5
1 2
view   save

Test 6

Group: 1, 2, 3

Verdict: ACCEPTED

input
1
5
3 2
3 4
5 1
1 3
view   save

correct output
(no output)
view   save

user output
4 5
3 4
2 4
1 5
view   save

Test 7

Group: 1, 2, 3

Verdict: ACCEPTED

input
1
5
4 3
1 4
4 2
5 4
view   save

correct output
(no output)
view   save

user output
4 5
3 4
2 4
1 4
view   save

Test 8

Group: 1, 2, 3

Verdict: ACCEPTED

input
1
10
9 3
8 9
2 9
1 9
10 9
9 7
9 6
9 5
9 4
view   save

correct output
(no output)
view   save

user output
9 10
8 9
7 9
6 9
5 9
4 9
3 9
2 9
1 9
view   save

Test 9

Group: 1, 2, 3

Verdict: ACCEPTED

input
1
10
9 2
5 8
7 1
6 8
4 10
9 7
10 3
3 2
1 6
view   save

correct output
(no output)
view   save

user output
9 10
8 9
7 8
6 10
5 6
4 5
3 4
2 3
1 2
view   save

Test 10

Group: 1, 2, 3

Verdict: ACCEPTED

input
1
10
10 4
9 1
4 7
3 8
8 1
7 6
4 1
6 2
2 5
view   save

correct output
(no output)
view   save

user output
9 10
8 9
7 8
6 7
5 6
4 9
3 10
2 3
1 10
view   save

Test 11

Group: 1, 2, 3

Verdict: ACCEPTED

input
1
10
2 6
4 3
3 5
10 6
9 2
7 5
1 8
7 8
1 2
view   save

correct output
(no output)
view   save

user output
9 10
8 9
7 9
6 7
5 10
4 5
3 4
2 3
1 2
view   save

Test 12

Group: 2, 3

Verdict: ACCEPTED

input
1
500
10 6
6 255
6 428
7 6
65 6
157 6
326 6
6 108
273 6
6 238
485 6
217 6
390 6
6 437
356 6
6 433
6 290
6 50
...
view   save

correct output
(no output)
view   save

user output
499 500
498 499
497 499
496 499
495 499
494 499
493 499
492 499
491 499
490 499
489 499
488 499
487 499
486 499
485 499
484 499
483 499
482 499
481 499
480 499
...
view   save

Test 13

Group: 2, 3

Verdict: ACCEPTED

input
1
500
152 466
451 313
158 479
445 87
403 273
328 192
464 107
126 87
291 290
333 70
405 480
433 170
316 387
462 144
123 322
35 319
434 249
120 264
...
view   save

correct output
(no output)
view   save

user output
499 500
498 499
497 498
496 497
495 496
494 495
493 494
492 493
491 492
490 491
489 490
488 489
487 488
486 487
485 486
484 485
483 484
482 483
481 482
480 481
...
view   save

Test 14

Group: 2, 3

Verdict: ACCEPTED

input
1
500
109 440
330 190
443 161
206 81
236 23
390 191
262 270
385 130
287 137
267 278
107 412
244 392
425 214
348 262
312 210
229 156
351 387
338 112
...
view   save

correct output
(no output)
view   save

user output
499 500
498 499
497 498
496 497
495 496
494 495
493 499
492 499
491 492
490 491
489 490
488 490
487 490
486 487
485 486
484 487
483 484
482 483
481 484
480 487
...
view   save

Test 15

Group: 2, 3

Verdict: ACCEPTED

input
1
500
144 373
257 233
341 318
156 159
185 13
53 470
432 16
308 263
94 302
136 297
197 323
294 347
168 268
41 455
32 330
380 276
266 91
269 187
...
view   save

correct output
(no output)
view   save

user output
499 500
498 499
497 498
496 497
495 496
494 495
493 494
492 493
491 492
490 491
489 490
488 489
487 488
486 487
485 486
484 485
483 484
482 483
481 482
480 481
...
view   save

Test 16

Group: 3

Verdict: ACCEPTED

input
1
100000
54983 75172
93807 75172
44082 75172
75172 84824
75172 98997
79024 75172
55343 75172
57592 75172
75172 29633
11325 75172
75172 41154
75172 51632
75172 24616
23798 75172
84117 75172
97734 75172
26832 75172
75172 95396
...
view   save

correct output
(no output)
view   save

user output
99999 100000
99998 99999
99997 99999
99996 99999
99995 99999
99994 99999
99993 99999
99992 99999
99991 99999
99990 99999
99989 99999
99988 99999
99987 99999
99986 99999
99985 99999
99984 99999
99983 99999
99982 99999
99981 99999
99980 99999
...
view   save

Test 17

Group: 3

Verdict: ACCEPTED

input
1
100000
88863 19059
86423 76688
98536 95984
96118 70092
42041 95469
79370 3245
54063 27564
50178 11587
37240 64983
68667 83518
62102 80017
74605 76124
78320 45225
17958 95419
89371 83327
85319 7806
80909 43525
22342 32749
...
view   save

correct output
(no output)
view   save

user output
99999 100000
99998 99999
99997 99998
99996 99997
99995 99996
99994 99995
99993 99994
99992 99993
99991 99992
99990 99991
99989 99990
99988 99989
99987 99988
99986 99987
99985 99986
99984 99985
99983 99984
99982 99983
99981 99982
99980 99981
...
view   save

Test 18

Group: 3

Verdict: ACCEPTED

input
1
100000
59979 6389
19097 24999
27846 82330
55283 21756
29532 76920
36672 78591
29233 30968
57832 78477
12306 933
80589 51575
39875 33992
73514 87981
87593 82747
84257 40591
14068 71832
42219 46584
67446 46486
17079 27619
...
view   save

correct output
(no output)
view   save

user output
99999 100000
99998 99999
99997 99998
99996 99997
99995 99996
99994 99995
99993 99996
99992 99993
99991 99992
99990 99991
99989 99992
99988 99989
99987 99988
99986 99992
99985 99986
99984 99993
99983 99984
99982 99983
99981 99982
99980 99981
...
view   save

Test 19

Group: 3

Verdict: ACCEPTED

input
1
100000
58761 66001
25102 51081
98625 67861
39627 96609
42728 51847
40036 50769
80361 62871
83736 23954
90511 8565
43281 75921
10718 47821
82970 98999
95998 88339
55110 1439
77175 25851
55051 6725
78592 78169
20243 17805
...
view   save

correct output
(no output)
view   save

user output
99999 100000
99998 99999
99997 99998
99996 99997
99995 99996
99994 99995
99993 99994
99992 99993
99991 99992
99990 99991
99989 99990
99988 99989
99987 99988
99986 99987
99985 99986
99984 99985
99983 99984
99982 99996
99981 99982
99980 99981
...
view   save

Test 20

Group: 1, 2, 3

Verdict: ACCEPTED

input
1
6
2 1
3 2
4 2
5 3
6 3
view   save

correct output
(no output)
view   save

user output
5 6
4 5
3 5
2 3
1 3
view   save