CSES - Datatähti 2020 loppu - Results
Submission details
Task:Riippuliito
Sender:Eero Salla
Submission time:2020-02-09 13:32:56 +0200
Language:C++11
Status:READY
Result:0
Feedback
groupverdictscore
#10
#20
#30
Test results
testverdicttimegroup
#10.01 s1, 2, 3details
#20.01 s1, 2, 3details
#30.01 s1, 2, 3details
#4ACCEPTED0.01 s1, 2, 3details
#50.01 s1, 2, 3details
#60.01 s1, 2, 3details
#70.01 s1, 2, 3details
#80.01 s2, 3details
#90.02 s2, 3details
#100.03 s2, 3details
#110.01 s2, 3details
#120.01 s2, 3details
#130.01 s2, 3details
#140.02 s2, 3details
#150.04 s3details
#16--3details
#17--3details
#180.04 s3details
#190.09 s3details
#200.20 s3details
#21--3details
#220.01 s1, 2, 3details
#230.01 s1, 2, 3details
#240.01 s1, 2, 3details
#250.01 s1, 2, 3details
#260.01 s1, 2, 3details
#270.01 s1, 2, 3details
#280.01 s1, 2, 3details
#290.01 s1, 2, 3details

Code

#include <bits/stdc++.h>

using namespace std;

typedef long long ll;

int main(){

    int mindex = -1;
    ll max = 0;

    int n;
    cin >> n;

    vector<ll> h(n);

    vector<ll> l, r;

    for(int i = 0; i < n; i++){
        cin >> h[i];

        if(h[i] > max){
            max = h[i];
            mindex = i;
        }
    }
    ll cnt = 2;
    while(1){
        ll l_best = -1;
        ll l_index = -1;
        for(int i = mindex-1; i >= 0; i--){
            if(h[i] >= max){
                break;
            } else {
                if(h[i] > l_best){
                    l_best = h[i];
                    l_index = i;
                }
            }
        }
        ll r_best = -1;
        ll r_index = -1;
        for(int i = mindex+1; i < n; i++){
            if(h[i] >= max){
                break;
            } else {
                if(h[i] > r_best){
                    r_best = h[i];
                    r_index = i;
                }
            }
        }

        if(l_index == -1 && r_index == -1){
            cout << cnt << endl;
            break;
        } else {
            if(l_best > r_best){
                cnt+=abs(mindex-l_index);
                mindex = l_index;
                max = l_best;
            } else {
                cnt+=abs(mindex-r_index);
                mindex = r_index;
                max = r_best;
            }
        }
    }

}

Test details

Test 1

Group: 1, 2, 3

Verdict:

input
10
1 1 1 1 1 1 1 1 1 1

correct output
1

user output
2

Test 2

Group: 1, 2, 3

Verdict:

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

correct output
10

user output
11

Test 3

Group: 1, 2, 3

Verdict:

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

correct output
10

user output
11

Test 4

Group: 1, 2, 3

Verdict: ACCEPTED

input
10
10 9 6 10 10 3 6 7 6 5

correct output
4

user output
4

Test 5

Group: 1, 2, 3

Verdict:

input
10
51 90 27 98 85 47 14 55 82 52

correct output
6

user output
5

Test 6

Group: 1, 2, 3

Verdict:

input
10
9 65 90 86 45 52 52 95 40 85

correct output
5

user output
11

Test 7

Group: 1, 2, 3

Verdict:

input
10
3 46 77 16 59 32 22 41 87 89

correct output
7

user output
17

Test 8

Group: 2, 3

Verdict:

input
5000
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ...

correct output
1

user output
2

Test 9

Group: 2, 3

Verdict:

input
5000
1 2 3 4 5 6 7 8 9 10 11 12 13 ...

correct output
5000

user output
5001

Test 10

Group: 2, 3

Verdict:

input
5000
5000 4999 4998 4997 4996 4995 ...

correct output
5000

user output
5001

Test 11

Group: 2, 3

Verdict:

input
5000
10 8 10 5 4 9 2 9 10 10 1 2 7 ...

correct output
9

user output
3

Test 12

Group: 2, 3

Verdict:

input
5000
655923386 310000737 281882248 ...

correct output
28

user output
7274

Test 13

Group: 2, 3

Verdict:

input
5000
123456789 123456790 123456791 ...

correct output
2706

user output
977

Test 14

Group: 2, 3

Verdict:

input
5000
123456789 123456790 123456791 ...

correct output
5000

user output
5001

Test 15

Group: 3

Verdict:

input
200000
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ...

correct output
1

user output
2

Test 16

Group: 3

Verdict:

input
200000
1 2 3 4 5 6 7 8 9 10 11 12 13 ...

correct output
200000

user output
(empty)

Test 17

Group: 3

Verdict:

input
200000
200000 199999 199998 199997 19...

correct output
200000

user output
(empty)

Test 18

Group: 3

Verdict:

input
200000
4 7 8 3 3 10 3 4 2 6 10 8 5 8 ...

correct output
10

user output
7

Test 19

Group: 3

Verdict:

input
200000
824527039 112439661 517794857 ...

correct output
43

user output
241994

Test 20

Group: 3

Verdict:

input
200000
123456789 123456790 123456791 ...

correct output
30764

user output
2728

Test 21

Group: 3

Verdict:

input
200000
123456789 123456790 123456791 ...

correct output
61367

user output
(empty)

Test 22

Group: 1, 2, 3

Verdict:

input
1
1

correct output
1

user output
2

Test 23

Group: 1, 2, 3

Verdict:

input
2
1 1

correct output
1

user output
2

Test 24

Group: 1, 2, 3

Verdict:

input
2
1 2

correct output
2

user output
3

Test 25

Group: 1, 2, 3

Verdict:

input
2
2 1

correct output
2

user output
3

Test 26

Group: 1, 2, 3

Verdict:

input
3
1 2 1

correct output
2

user output
3

Test 27

Group: 1, 2, 3

Verdict:

input
3
1 2 3

correct output
3

user output
4

Test 28

Group: 1, 2, 3

Verdict:

input
3
3 2 1

correct output
3

user output
4

Test 29

Group: 1, 2, 3

Verdict:

input
3
2 1 2

correct output
2

user output
3