CSES - Siperia opettaa 5.0 - Results
Submission details
Task:Jogging in the Park
Sender:Pohjantahti
Submission time:2017-03-09 16:27:03 +0200
Language:C++
Status:READY
Result:0
Feedback
groupverdictscore
#10
Test results
testverdicttime
#10.05 sdetails
#20.05 sdetails
#3ACCEPTED0.04 sdetails
#40.04 sdetails
#50.04 sdetails
#60.03 sdetails
#70.04 sdetails
#80.03 sdetails
#90.05 sdetails
#100.04 sdetails
#110.04 sdetails
#120.04 sdetails
#130.06 sdetails
#140.06 sdetails
#15ACCEPTED0.05 sdetails
#160.06 sdetails
#170.06 sdetails
#180.04 sdetails
#190.06 sdetails
#200.07 sdetails
#210.05 sdetails
#220.05 sdetails
#230.06 sdetails
#240.06 sdetails
#250.06 sdetails
#260.05 sdetails
#270.07 sdetails
#280.05 sdetails
#290.05 sdetails
#300.05 sdetails
#310.04 sdetails
#320.05 sdetails
#330.06 sdetails
#340.06 sdetails
#350.06 sdetails
#360.06 sdetails
#370.07 sdetails
#380.07 sdetails
#39ACCEPTED0.03 sdetails
#40ACCEPTED0.04 sdetails
#41ACCEPTED0.04 sdetails
#42ACCEPTED0.04 sdetails
#43ACCEPTED0.03 sdetails
#44ACCEPTED0.03 sdetails
#45ACCEPTED0.04 sdetails
#46ACCEPTED0.04 sdetails
#470.05 sdetails
#480.07 sdetails
#490.04 sdetails
#500.04 sdetails
#510.04 sdetails
#520.08 sdetails
#530.07 sdetails
#540.06 sdetails
#550.06 sdetails
#560.07 sdetails
#570.06 sdetails
#580.06 sdetails
#590.06 sdetails
#600.07 sdetails
#610.07 sdetails
#620.06 sdetails
#630.07 sdetails
#640.06 sdetails
#650.05 sdetails
#660.06 sdetails
#670.07 sdetails
#680.06 sdetails
#690.06 sdetails
#700.05 sdetails
#710.06 sdetails
#720.07 sdetails
#730.04 sdetails
#740.04 sdetails
#750.04 sdetails
#760.07 sdetails
#770.08 sdetails

Compiler report

input/code.cpp: In function 'int main()':
input/code.cpp:84:41: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         for (int j = 1; j < res[i].size(); ++j) {
                                         ^

Code

#include <iostream>
#include <vector>
#include <queue>
#include <algorithm>

using namespace std;
#define F first
#define S second
#define PB push_back
#define MP make_pair

int n, m, k;
vector<pair<int, int>> g[55];
vector<int> srt[55];

int v1[55];

vector<int> res[55];
vector<int> route;

vector<int> trures[55];

bool cdfs(int s) {
    if (v1[s]) return false;
    v1[s] = 1;  
    
    route.PB(s);
    if (s == n) return true;   
    bool res = false;
    
    for (auto a : g[s]) {
        if (cdfs(a.F)) res = true;
    }
    route.pop_back();
    return res;
}

int main() {
    cin >> n >> m;
    for (int i = 0; i < m; ++i) {
        int a, b, c;
        cin >> a >> b >> c;
        g[a].PB(MP(b, c));
        g[b].PB(MP(a, c));
    }
    cin >> k;
    for (int i = 0; i < k; ++i) {
        int l;
        cin >> l;
        for (int j = 0; j < l; ++j) {
            int g;
            cin >> g;
            srt[i].PB(g);
        }
    }
    
    // route as side effect
    if (!cdfs(1)) {
        cout << "-1\n";
        return 0;
    }
    
    for (int i = 0; i < k; ++i) {
        res[i].assign(srt[i].begin(), srt[i].end());
        vector<int> rt1;
        rt1.assign(srt[i].begin(), srt[i].end()-1);
        rt1.PB(1);
        reverse(rt1.begin(), rt1.end());
        res[i].insert(res[i].end(), rt1.begin(), rt1.end());
        for (int j = 0; j < k; ++j) {
            if (j == i) continue;
            res[i].insert(res[i].end(), srt[j].begin(), srt[j].end());
            vector<int> rt2;
            rt2.assign(srt[j].begin(), srt[j].end()-1);
            rt2.PB(1);
            reverse(rt2.begin(), rt2.end());
            res[i].insert(res[i].end(), rt2.begin(), rt2.end());
        }
        res[i].pop_back(); // remove duplicate 1
        res[i].insert(res[i].end(), route.begin(), route.end());
    }
    for (int i = 0; i < k; ++i) {
        trures[i].PB(res[i][0]);
        for (int j = 1; j < res[i].size(); ++j) {
            if (res[i][j] != res[i][j-1]) trures[i].PB(res[i][j]);
        }
    }
    
    for (int i = 0; i < k; ++i) {
        cout << trures[i].size() << " ";
        for (int a : trures[i]) cout << a << " ";
        cout << "\n";
    }
    return 0;
}

Test details

Test 1

Verdict:

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 1 2 1 4 1 
10 1 2 3 1 2 1 2 1 4 1 
10 1 4 1 2 1 2 3 1 2 1 

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
5 1 2 1 2 1 
5 1 2 1 2 1 

Test 3

Verdict: ACCEPTED

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

correct output
-1

user output
-1

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
27 1 3 1 3 1 3 1 3 1 3 1 3 1 3...

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
28 1 2 3 1 2 1 3 1 2 1 3 1 2 3...

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
41 1 6 3 1 6 1 5 3 6 1 3 5 1 5...

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
70 1 5 4 5 1 4 5 1 7 5 1 5 1 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
52 1 6 1 6 8 1 6 1 6 5 6 2 6 4...

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
111 1 8 1 2 1 2 1 8 1 4 6 4 9 ...

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
132 1 8 9 6 2 5 1 2 6 9 8 1 8 ...

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
431 1 8 12 3 19 1 3 12 8 1 20 ...

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
1048 1 29 15 3 15 1 15 29 8 3 ...

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
1801 1 2 11 2 40 4 18 36 11 18...

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
2235 1 2 44 2 14 40 34 3 28 34...

Test 15

Verdict: ACCEPTED

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

correct output
-1

user output
-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
2425 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
2418 1 24 43 3 45 3 41 35 41 3...

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
2613 1 18 45 50 38 16 24 36 42...

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
2666 1 31 38 49 34 19 44 19 29...

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
2446 1 12 28 46 32 16 29 38 48...

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
2426 1 32 4 21 32 47 30 44 23 ...

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
2669 1 50 1 50 1 50 1 50 1 50 ...

Test 23

Verdict:

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
2521 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
2569 1 37 1 37 1 37 1 50 1 50 ...

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
2519 1 50 8 50 8 50 1 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
2511 1 12 6 12 1 6 12 1 12 6 3...

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
2338 1 6 4 12 46 12 25 12 13 4...

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
2655 1 6 1 19 50 19 22 19 1 19...

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
2467 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
2586 1 19 1 19 1 19 1 19 1 19 ...

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
2393 1 27 9 5 9 33 19 33 19 33...

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
2401 1 34 21 34 1 34 7 34 7 1 ...

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
2556 1 40 12 2 12 2 12 2 12 2 ...

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
2307 1 4 1 27 40 25 2 35 2 35 ...

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
2637 1 17 2 14 32 14 32 36 39 ...

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
2630 1 49 1 6 40 2 11 2 4 38 2...

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
2644 1 17 1 26 25 26 25 26 1 2...

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
2337 1 8 1 8 1 41 22 41 1 8 28...

Test 39

Verdict: ACCEPTED

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

correct output
-1

user output
-1

Test 40

Verdict: ACCEPTED

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
-1

Test 41

Verdict: ACCEPTED

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

correct output
-1

user output
-1

Test 42

Verdict: ACCEPTED

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

correct output
-1

user output
-1

Test 43

Verdict: ACCEPTED

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

correct output
-1

user output
-1

Test 44

Verdict: ACCEPTED

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

correct output
-1

user output
-1

Test 45

Verdict: ACCEPTED

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

correct output
-1

user output
-1

Test 46

Verdict: ACCEPTED

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

correct output
-1

user output
-1

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
2797 1 2 1 2 1 2 1 2 1 2 1 2 1...

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
4901 1 2 1 2 1 2 1 2 1 2 1 2 1...

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
5 1 48 1 6 1 
5 1 6 1 48 1 

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
102 1 13 35 13 35 13 35 13 1 2...

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
199 1 28 20 28 20 39 45 39 45 ...

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
4949 1 28 48 28 13 11 6 11 6 9...

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
4950 1 21 31 46 22 27 41 35 13...

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
2659 1 50 1 50 1 50 1 50 1 50 ...

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
2575 1 50 1 50 1 50 1 50 1 50 ...

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
2284 1 18 48 33 48 33 48 33 48...

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
2387 1 30 1 30 1 30 1 50 1 30 ...

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
2243 1 4 1 4 1 14 5 45 5 45 5 ...

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
1723 1 13 39 14 39 27 39 46 39...

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
2747 1 50 42 40 27 20 16 20 16...

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
2428 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
2537 1 43 17 14 17 43 4 43 4 4...

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
2743 1 28 23 38 23 38 13 38 13...

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
2603 1 48 33 47 17 47 17 47 33...

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
2508 1 49 18 49 36 39 36 39 27...

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
2460 1 47 42 47 42 47 14 47 26...

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
2853 1 23 1 44 5 44 1 23 29 4 ...

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
2358 1 32 39 32 1 32 36 32 1 3...

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
2371 1 15 1 15 1 15 33 11 33 1...

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
2570 1 48 46 48 1 48 1 48 46 1...

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
2905 1 2 1 2 1 2 1 2 1 2 1 2 1...

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
4901 1 2 1 2 1 2 1 2 1 2 1 2 1...

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
5 1 6 1 22 1 
5 1 22 1 6 1 

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
166 1 20 21 20 1 20 1 20 21 20...

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
199 1 23 46 23 46 16 17 50 25 ...

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
4950 1 8 48 39 45 39 48 7 48 3...

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
4948 1 38 42 41 28 20 11 28 25...