CSES - Siperia opettaa 5.0 - Results
Submission details
Task:Jogging in the Park
Sender:mangolassi
Submission time:2017-03-09 17:03:06 +0200
Language:C++
Status:READY
Result:0
Feedback
groupverdictscore
#10
Test results
testverdicttime
#1ACCEPTED0.04 sdetails
#20.02 sdetails
#30.04 sdetails
#40.02 sdetails
#50.05 sdetails
#60.05 sdetails
#70.02 sdetails
#80.04 sdetails
#90.04 sdetails
#100.00 sdetails
#110.00 sdetails
#120.00 sdetails
#130.54 sdetails
#140.00 sdetails
#150.04 sdetails
#160.06 sdetails
#170.00 sdetails
#180.00 sdetails
#190.00 sdetails
#200.00 sdetails
#210.00 sdetails
#220.05 sdetails
#23ACCEPTED0.05 sdetails
#240.04 sdetails
#250.07 sdetails
#260.03 sdetails
#270.05 sdetails
#280.04 sdetails
#290.06 sdetails
#300.05 sdetails
#310.04 sdetails
#320.04 sdetails
#330.05 sdetails
#340.05 sdetails
#350.04 sdetails
#360.05 sdetails
#370.06 sdetails
#380.03 sdetails
#390.04 sdetails
#400.04 sdetails
#410.04 sdetails
#420.05 sdetails
#430.00 sdetails
#440.00 sdetails
#450.00 sdetails
#460.81 sdetails
#470.04 sdetails
#480.04 sdetails
#490.04 sdetails
#500.04 sdetails
#510.04 sdetails
#520.04 sdetails
#530.03 sdetails
#540.04 sdetails
#550.04 sdetails
#560.03 sdetails
#570.04 sdetails
#580.05 sdetails
#590.03 sdetails
#600.05 sdetails
#610.05 sdetails
#620.03 sdetails
#630.04 sdetails
#640.04 sdetails
#650.05 sdetails
#660.03 sdetails
#670.05 sdetails
#680.04 sdetails
#690.04 sdetails
#700.00 sdetails
#710.05 sdetails
#720.04 sdetails
#730.04 sdetails
#740.03 sdetails
#750.04 sdetails
#760.04 sdetails
#770.00 sdetails

Compiler report

input/code.cpp: In function 'void doit(int)':
input/code.cpp:12:36: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for (int k = 0; k < conns[i].size(); ++k) {
                                    ^
input/code.cpp: In function 'int main()':
input/code.cpp:61:38: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
    for (int v = 1; v < paths[p].size(); ++v) {
                                      ^
input/code.cpp:68:33: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
   for (int t = 0; t < last.size(); ++t) {
                                 ^

Code

#include <iostream>
#include <vector>
const int N = 50;
const int K = 50;
std::vector<int> conns[N];
std::vector<int> paths[K];
std::vector<int> last;
int prev[N];

void doit(int i) {
	if (i == 0) return;
	for (int k = 0; k < conns[i].size(); ++k) {
		if (! prev[k]) {
			prev[k] = i;
			doit(k);
		}
	}
}

int main() {
	std::ios_base::sync_with_stdio(false);
	std::cin.tie(0);

	int n, m;
	std::cin >> n >> m;
	for (int i = 0; i < n; ++i) {
		// We don't care about the length, since everyone runs the same route.
		int a, b, c;
		std::cin >> a >> b >> c;
		--a;
		--b;
		conns[a].push_back(b);
		conns[b].push_back(a);
	}
	int k;
	std::cin >> k;
	for (int i = 0; i < k; ++i) {
		int len;
		std::cin >> len;
		for (int j = 0; j < len; ++j) {
			int t;
			std::cin >> t;
			paths[i].push_back(t);
		}
	}
	prev[n-1] = n-1;
	doit(n-1);
	int j = 0;
	while(j != n-1) {
		j = prev[j];
		last.push_back(j+1);
	}
	int sum = last.size() + 1;
	for (int i = 0; i < k; ++i) {
		sum += 2 * (paths[i].size() - 1);
	}
	for (int i = 0; i < k; ++i) {
		std::cout << sum << " 1 ";
		for (int t = i; t < i + k; ++t) {
			int p = t % k;
			for (int v = 1; v < paths[p].size(); ++v) {
				std::cout << paths[p][v] << " ";
			}
			for (int v = paths[p].size() - 2; v >= 0; --v) {
				std::cout << paths[p][v] << " ";
			}
		}
		for (int t = 0; t < last.size(); ++t) {
			std::cout << last[t] << " ";
		}
		std::cout << "\n";
	}
}

Test details

Test 1

Verdict: ACCEPTED

input
4 4
1 2 10
2 3 30
2 4 30
1 4 100
...

correct output
5 1 2 4 2 4
5 1 2 3 2 4
2 1 4

user output
10 1 2 1 2 3 2 1 4 1 4 
10 1 2 3 2 1 4 1 2 1 4 
10 1 4 1 2 1 2 3 2 1 4 

Test 2

Verdict:

input
2 1
1 2 1
2
2 1 2
2 1 2

correct output
6 1 2 1 2 1 2
6 1 2 1 2 1 2

user output
6 1 2 1 2 2 2 
6 1 2 2 2 1 2 

Test 3

Verdict:

input
3 1
2 1 126343
3
2 1 2
2 1 2
...

correct output
-1

user output
10 1 2 1 2 1 1 1 1 1 3 
10 1 1 1 1 1 2 1 2 1 3 

Test 4

Verdict:

input
4 3
2 3 422491
3 1 676844
3 4 911978
4
...

correct output
27 1 3 1 3 1 3 1 3 1 3 1 3 1 3...

user output
14 1 3 1 3 1 3 1 3 4 3 4 3 1 4...

Test 5

Verdict:

input
5 5
4 3 220407
4 5 186990
1 2 543128
1 3 592312
...

correct output
29 1 2 3 2 1 3 1 2 1 3 1 2 3 2...

user output
26 1 2 3 2 1 3 1 2 1 3 1 2 3 2...

Test 6

Verdict:

input
6 7
1 6 108747
1 2 828321
4 2 138493
3 5 957648
...

correct output
38 1 6 3 6 1 5 3 6 3 5 1 5 3 5...

user output
44 1 6 3 1 3 6 832298 4 1 5 3 ...

Test 7

Verdict:

input
7 10
3 1 959403
1 5 49537
6 5 751284
5 3 38703
...

correct output
69 1 5 4 5 4 5 1 7 5 1 5 1 7 1...

user output
14 1 2 358747 6 7 888438 7 4 7...

Test 8

Verdict:

input
8 14
4 3 295651
4 5 228022
5 7 177000
8 2 927312
...

correct output
49 1 6 1 6 8 6 1 6 5 6 2 6 4 6...

user output
10 1 2 6 346584 7 346584 6 2 7...

Test 9

Verdict:

input
9 18
3 6 778617
5 7 184566
7 8 87821
1 6 750157
...

correct output
111 1 8 1 2 1 2 1 8 1 4 6 4 9 ...

user output
72 1 953246 2 5 831684 9 5 721...

Test 10

Verdict:

input
10 22
2 10 853284
8 5 921861
4 1 393544
6 9 485650
...

correct output
128 1 8 9 6 2 5 2 6 9 8 1 8 5 ...

user output
(empty)

Test 11

Verdict:

input
20 95
15 6 619915
6 1 13806
8 5 143176
2 4 769041
...

correct output
429 1 8 12 3 19 3 12 8 1 20 6 ...

user output
(empty)

Test 12

Verdict:

input
30 217
5 13 183794
16 13 224536
27 16 67904
6 22 434902
...

correct output
1041 1 29 15 3 15 1 15 29 8 3 ...

user output
(empty)

Test 13

Verdict:

input
40 390
3 18 441727
19 20 768737
3 24 346809
29 38 436076
...

correct output
1789 1 2 11 2 40 4 18 36 11 18...

user output
(empty)

Test 14

Verdict:

input
50 612
24 31 483112
29 32 686079
30 8 577082
13 10 431125
...

correct output
2192 1 2 44 2 14 40 34 3 28 34...

user output
(empty)

Test 15

Verdict:

input
50 10
43 6 356013
47 25 705150
48 22 452817
41 47 329250
...

correct output
-1

user output
496 1 16 1 16 1 16 1 16 1 16 1...

Test 16

Verdict:

input
50 50
18 6 125383
24 47 355489
50 36 768819
26 21 212057
...

correct output
2393 1 17 20 17 3 36 50 36 50 ...

user output
2380 1 17 20 17 3 36 50 36 50 ...

Test 17

Verdict:

input
50 100
49 15 713128
47 1 774986
34 9 197437
46 31 639281
...

correct output
2377 1 24 43 3 45 3 41 35 41 3...

user output
(empty)

Test 18

Verdict:

input
50 200
2 4 242434
4 11 533605
38 16 693158
45 14 168936
...

correct output
2594 1 18 45 50 38 16 24 36 42...

user output
(empty)

Test 19

Verdict:

input
50 500
14 22 2115
24 38 542476
1 31 281758
48 16 336769
...

correct output
2651 1 31 38 49 34 19 44 19 29...

user output
(empty)

Test 20

Verdict:

input
50 1000
23 45 753339
30 22 836066
25 50 982241
8 10 833192
...

correct output
2442 1 12 28 46 32 16 29 38 48...

user output
(empty)

Test 21

Verdict:

input
50 1225
43 21 508093
42 1 359806
37 13 572770
42 4 332956
...

correct output
2416 1 32 4 21 32 47 30 44 23 ...

user output
(empty)

Test 22

Verdict:

input
50 1
1 50 804089
50
45 1 50 1 50 1 50 1 50 1 50 1 ...

correct output
2670 1 50 1 50 1 50 1 50 1 50 ...

user output
2424 1 50 1 50 1 50 1 50 1 50 ...

Test 23

Verdict: ACCEPTED

input
50 2
1 50 64792
33 16 914759
50
39 1 50 1 50 1 50 1 50 1 50 1 ...

correct output
2522 1 50 1 50 1 50 1 50 1 50 ...

user output
1250 1 50 1 50 1 50 1 50 1 50 ...

Test 24

Verdict:

input
50 5
50 1 751594
37 1 659022
19 20 165250
27 3 872182
...

correct output
2570 1 37 1 37 1 37 1 50 1 50 ...

user output
1786 1 50 1 37 1 50 1 50 1 37 ...

Test 25

Verdict:

input
50 10
17 3 140562
50 46 566114
1 50 44523
15 49 262156
...

correct output
2486 1 50 8 50 8 50 1 50 1 50 ...

user output
2446 1 50 8 50 1 50 46 50 1 50...

Test 26

Verdict:

input
50 20
29 26 976451
16 14 782230
34 2 831266
3 50 841178
...

correct output
2472 1 12 6 12 6 12 1 12 6 37 ...

user output
544 1 1 12 6 12 6 12 6 12 6 37...

Test 27

Verdict:

input
50 30
31 37 848046
12 4 917382
5 50 409203
32 24 721683
...

correct output
2300 1 6 4 12 46 12 25 12 13 4...

user output
1970 1 5 50 25 50 5 50 33 50 1...

Test 28

Verdict:

input
50 49
4 20 377425
17 44 532133
3 13 952122
12 17 950224
...

correct output
2609 1 6 1 19 50 19 22 19 1 19...

user output
394 1 22 19 1 19 50 19 22 19 2...

Test 29

Verdict:

input
50 50
18 6 900140
24 47 492407
50 36 838985
26 21 601857
...

correct output
2431 1 17 22 39 22 17 40 17 20...

user output
2424 1 17 22 39 22 17 40 17 20...

Test 30

Verdict:

input
50 51
17 14 565801
27 35 780637
7 44 92249
31 26 757452
...

correct output
2560 1 19 1 19 1 19 1 19 1 19 ...

user output
724 1 50 36 1 19 1 19 1 19 1 1...

Test 31

Verdict:

input
50 52
16 21 493569
32 25 493263
14 4 872312
35 32 900764
...

correct output
2364 1 27 9 5 9 33 19 33 19 33...

user output
1618 1 28 36 269251 50 44 1 27...

Test 32

Verdict:

input
50 53
15 28 822274
35 16 325913
21 13 869492
40 36 241285
...

correct output
2362 1 34 21 34 1 34 7 34 7 34...

user output
2046 1 6 23 298088 26 23 99766...

Test 33

Verdict:

input
50 54
15 35 20800
39 4 98681
27 21 199586
44 43 135668
...

correct output
2527 1 40 12 2 12 2 12 2 12 2 ...

user output
2094 1 40 1 30880 23 35 438638...

Test 34

Verdict:

input
50 55
14 44 230396
42 44 70803
34 32 227889
49 47 245709
...

correct output
2268 1 4 1 27 40 25 2 35 2 35 ...

user output
1234 1 25 29 815479 10 22 5666...

Test 35

Verdict:

input
50 56
13 1 243742
47 34 614193
41 40 653334
34 40 60543
...

correct output
2606 1 17 2 14 32 14 32 36 39 ...

user output
462 1 23 375220 17 2 387160 26...

Test 36

Verdict:

input
50 57
12 8 364529
50 22 954398
9 8 474862
36 24 70773
...

correct output
2588 1 49 1 6 40 2 11 2 4 38 2...

user output
2468 1 10 27 919494 49 44 2355...

Test 37

Verdict:

input
50 58
13 15 137082
5 13 550236
5 9 569938
14 12 870658
...

correct output
2611 1 17 1 26 25 26 25 26 1 2...

user output
2006 1 8 10 273662 19 1 293217...

Test 38

Verdict:

input
50 59
11 25 296122
8 1 932551
11 17 424243
37 40 732634
...

correct output
2301 1 8 1 8 1 41 22 41 1 8 28...

user output
14 1 818636 32 7 337359 10 13 ...

Test 39

Verdict:

input
50 1
1 3 993492
50
4 1 3 1 3
3 1 3 1
...

correct output
-1

user output
2 1 50 
2 1 50 
2 1 50 

Test 40

Verdict:

input
50 2
1 37 282170
46 29 217201
50
22 1 37 1 37 1 37 1 37 1 37 1 ...

correct output
-1

user output
74 1 37 1 37 1 37 12 1 37 1 37...

Test 41

Verdict:

input
50 10
43 6 356013
47 25 705150
48 22 452817
41 47 329250
...

correct output
-1

user output
496 1 16 1 16 1 16 1 16 1 16 1...

Test 42

Verdict:

input
50 50
18 6 212057
24 47 889913
50 36 43881
26 21 798403
...

correct output
-1

user output
2188 1 17 1 17 22 2 22 2 22 19...

Test 43

Verdict:

input
50 200
2 4 646230
4 11 465342
38 16 766008
45 14 212156
...

correct output
-1

user output
(empty)

Test 44

Verdict:

input
50 500
14 22 7905
24 38 13209
1 31 955240
48 16 669104
...

correct output
-1

user output
(empty)

Test 45

Verdict:

input
50 1000
23 45 847875
30 22 424127
25 50 254138
8 10 250016
...

correct output
-1

user output
(empty)

Test 46

Verdict:

input
50 1176
26 29 108222
9 12 486206
23 43 240551
49 47 20932
...

correct output
-1

user output
(empty)

Test 47

Verdict:

input
2 1
2 1 975415
50
25 1 2 1 2 1 2 1 2 1 2 1 2 1 2...

correct output
2798 1 2 1 2 1 2 1 2 1 2 1 2 1...

user output
2 1 2 
2 1 2 

Test 48

Verdict:

input
2 1
1 2 710797
50
50 1 2 1 2 1 2 1 2 1 2 1 2 1 2...

correct output
4902 1 2 1 2 1 2 1 2 1 2 1 2 1...

user output
2 1 2 
2 1 2 

Test 49

Verdict:

input
50 49
7 45 432244
1 6 28776
5 33 319859
14 26 551130
...

correct output
9 1 48 1 6 1 48 9 37 50
9 1 6 1 48 1 48 9 37 50

user output
98 1 6 1 6 6 6 6 6 6 6 6 6 6 6...

Test 50

Verdict:

input
50 49
13 35 107458
4 50 169906
42 20 423572
20 1 214992
...

correct output
105 1 13 35 13 35 13 35 13 1 2...

user output
1054 1 35 13 35 13 1 20 24 20 ...

Test 51

Verdict:

input
50 49
30 13 165078
5 1 26738
22 7 465838
4 42 978353
...

correct output
201 1 28 20 28 20 39 45 39 45 ...

user output
2044 1 20 39 45 39 45 39 45 39...

Test 52

Verdict:

input
50 49
13 28 172679
49 10 797344
17 48 349214
19 25 554003
...

correct output
4912 1 28 48 28 13 11 6 11 6 9...

user output
1184 1 13 11 6 11 6 9 45 40 15...

Test 53

Verdict:

input
50 1225
14 50 592342
4 45 67501
17 28 316341
7 10 221560
...

correct output
4936 1 21 31 46 22 27 41 35 13...

user output
16 1 24 32 261074 41 4 548115 ...

Test 54

Verdict:

input
50 1
1 50 931755
50
12 1 50 1 50 1 50 1 50 1 50 1 ...

correct output
2660 1 50 1 50 1 50 1 50 1 50 ...

user output
100 1 50 1 50 1 50 1 50 1 50 1...

Test 55

Verdict:

input
50 2
45 37 934740
50 1 976081
49
12 1 50 1 50 1 50 1 50 1 50 1 ...

correct output
2576 1 50 1 50 1 50 1 50 1 50 ...

user output
100 1 50 1 50 1 50 1 50 1 50 1...

Test 56

Verdict:

input
48 5
33 48 933621
26 8 923686
1 18 904348
48 18 906503
...

correct output
2253 1 18 48 33 48 33 48 33 48...

user output
880 1 48 33 48 33 48 33 48 33 ...

Test 57

Verdict:

input
50 10
18 19 932793
46 15 956479
45 42 912859
24 12 913931
...

correct output
2388 1 30 1 30 1 30 1 50 1 30 ...

user output
100 1 50 1 30 1 50 1 50 1 30 1...

Test 58

Verdict:

input
46 20
5 14 990634
2 10 979855
41 42 950762
29 33 989021
...

correct output
2213 1 4 1 4 1 14 5 45 5 45 5 ...

user output
1290 1 13 37 13 37 46 37 13 37...

Test 59

Verdict:

input
50 30
26 50 993203
41 26 965266
39 16 958251
23 24 961789
...

correct output
1694 1 13 39 14 39 27 39 46 39...

user output
1190 1 1 13 39 27 26 34 37 21 ...

Test 60

Verdict:

input
50 49
38 33 993842
46 11 997690
4 12 999788
2 27 995145
...

correct output
2704 1 50 42 40 27 20 16 20 16...

user output
3020 1 27 20 16 20 16 20 16 20...

Test 61

Verdict:

input
50 50
1 37 990029
24 20 997567
47 50 997143
39 6 994769
...

correct output
2405 1 29 17 29 17 29 17 29 26...

user output
2392 1 29 17 29 17 29 17 29 26...

Test 62

Verdict:

input
50 51
7 44 994766
24 4 998444
7 42 995501
50 7 994144
...

correct output
2501 1 43 17 14 17 43 4 43 4 4...

user output
1180 1 50 21 1 43 17 14 17 43 ...

Test 63

Verdict:

input
50 52
11 48 990449
26 37 993159
19 34 999742
12 45 999748
...

correct output
2709 1 28 23 38 23 38 13 38 13...

user output
300 1 2 43 996053 50 32 1 28 2...

Test 64

Verdict:

input
50 53
16 2 996627
25 20 999753
29 25 994402
24 40 993545
...

correct output
2569 1 48 33 47 17 47 17 47 33...

user output
1424 1 6 46 999159 40 39 99843...

Test 65

Verdict:

input
50 54
20 9 997947
25 4 994712
41 17 995362
38 35 990120
...

correct output
2473 1 49 18 49 36 39 36 39 27...

user output
1704 1 25 16 999305 14 11 9956...

Test 66

Verdict:

input
50 55
25 13 997258
27 37 999250
1 7 999287
49 29 993935
...

correct output
2425 1 47 42 47 42 47 14 47 26...

user output
1370 1 33 42 994527 47 1 99191...

Test 67

Verdict:

input
50 56
29 19 995631
26 20 999314
13 48 996307
11 24 994360
...

correct output
2825 1 23 1 44 5 44 1 23 29 4 ...

user output
702 1 47 34 991367 36 18 99454...

Test 68

Verdict:

input
50 57
33 24 990486
28 4 990429
23 40 991607
23 19 997467
...

correct output
2328 1 32 39 32 1 32 36 32 1 3...

user output
2278 1 40 16 994916 40 9 99165...

Test 69

Verdict:

input
50 58
38 30 992340
28 37 999170
35 32 996483
35 13 994828
...

correct output
2342 1 15 1 15 1 15 33 11 33 1...

user output
404 1 6 43 996282 49 47 998031...

Test 70

Verdict:

input
50 59
42 34 999389
29 21 992078
45 23 991823
46 8 994989
...

correct output
2543 1 48 46 48 1 48 1 48 46 1...

user output
(empty)

Test 71

Verdict:

input
2 1
1 2 1000000
50
42 1 2 1 2 1 2 1 2 1 2 1 2 1 2...

correct output
2906 1 2 1 2 1 2 1 2 1 2 1 2 1...

user output
2 1 2 
2 1 2 

Test 72

Verdict:

input
2 1
1 2 999988
50
50 1 2 1 2 1 2 1 2 1 2 1 2 1 2...

correct output
4902 1 2 1 2 1 2 1 2 1 2 1 2 1...

user output
2 1 2 
2 1 2 

Test 73

Verdict:

input
50 49
33 37 999995
43 27 999996
37 9 999993
1 27 999995
...

correct output
13 1 6 1 22 1 6 15 42 48 41 28...

user output
14 1 22 1 22 22 22 22 22 22 22...

Test 74

Verdict:

input
50 49
40 22 953319
45 4 901825
40 27 941787
22 42 932722
...

correct output
167 1 20 21 20 1 20 1 20 21 20...

user output
1472 1 1 20 1 20 21 20 21 20 1...

Test 75

Verdict:

input
50 49
28 8 993166
17 21 995866
21 27 994745
43 13 995341
...

correct output
202 1 23 46 23 46 16 17 50 25 ...

user output
1030 1 46 16 17 50 25 50 2 50 ...

Test 76

Verdict:

input
50 49
36 6 999984
40 41 999956
44 12 999916
5 35 999945
...

correct output
4911 1 8 48 39 45 39 48 7 48 3...

user output
378 1 45 39 48 7 48 39 32 17 2...

Test 77

Verdict:

input
50 1225
44 32 999345
14 1 999175
47 29 999839
11 24 999688
...

correct output
4914 1 38 42 41 28 20 11 28 25...

user output
(empty)