Submission details
Task:Aquarium
Sender:aalto25a_001
Submission time:2025-09-03 18:45:03 +0300
Language:C++ (C++17)
Status:READY
Result:
Test results
testverdicttime
#1ACCEPTED0.00 sdetails
#2ACCEPTED0.00 sdetails
#3ACCEPTED0.00 sdetails
#4ACCEPTED0.00 sdetails
#50.00 sdetails
#60.00 sdetails
#70.00 sdetails
#80.00 sdetails
#90.00 sdetails
#100.00 sdetails
#110.00 sdetails
#120.00 sdetails
#130.00 sdetails
#140.00 sdetails
#150.00 sdetails
#160.00 sdetails
#170.00 sdetails
#180.00 sdetails
#19ACCEPTED0.00 sdetails
#20ACCEPTED0.00 sdetails
#21ACCEPTED0.00 sdetails
#22ACCEPTED0.00 sdetails
#230.00 sdetails
#24ACCEPTED0.00 sdetails
#250.00 sdetails
#26ACCEPTED0.00 sdetails
#270.00 sdetails
#280.00 sdetails
#290.00 sdetails
#300.00 sdetails
#310.00 sdetails
#320.00 sdetails
#330.00 sdetails
#340.00 sdetails
#350.00 sdetails
#360.00 sdetails
#370.00 sdetails
#38ACCEPTED0.00 sdetails
#390.00 sdetails
#400.00 sdetails
#410.00 sdetails
#420.00 sdetails
#43ACCEPTED0.00 sdetails
#440.00 sdetails

Code

#include <iostream>
#include <queue>
#include <cmath>

using namespace std;

int main() {
    float h[10001];
    int n;
    cin >> n;
    for(int i = 1; i <= n; i++) {
        cin >> h[i];
    }
    int q; float v;
    cin >> q >> v;

    int l, r;
    l=q-1;
    r=q+1;

    float cw = min(v, h[q]);

    while(true) {
        while(l>0 && h[l] <= cw) l--;
        while(r<=n && h[r] <= cw) r++;
        if(l<1 || r>n) break;
        float mh = min(h[l], h[r]);
        float need = (r-l-1) * mh;
        cout << cw << ' ' << v << ' ' << need << ' ' << mh << ' ' << l << ' ' << r << '\n';
        if(v >= need) {
            cw = mh;
        }
        else {
            if (cw < mh) cw = max(cw, v/need*mh);
            break;
        }
    }

    cout << cw << '\n';

    return 0;
}

Test details

Test 1

Verdict: ACCEPTED

input
1

1 1

correct output
1

user output
1

Test 2

Verdict: ACCEPTED

input
2
1 2 
1 1

correct output
1

user output
1

Test 3

Verdict: ACCEPTED

input
3
1 1 3 
2 7

correct output
1

user output
1

Test 4

Verdict: ACCEPTED

input
5
1 1 5 3 5 
3 6

correct output
5

user output
5

Test 5

Verdict:

input
6
5 3 1 2 4 6 
3 4

correct output
2

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

Test 6

Verdict:

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

correct output
3

user output
1 7 2 2 3 5
2 7 6 3 3 6
3 7 12 4 2 6
3

Test 7

Verdict:

input
9
2 1 9 5 9 4 5 4 3 
4 5

correct output
5

user output
5 5 9 9 3 5
5

Test 8

Verdict:

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

correct output
3.66667

user output
1 11 2 2 4 6
2 11 6 3 4 7
3 11 12 4 3 7
3.66667

Test 9

Verdict:

input
12
11 9 7 5 3 1 2 4 6 8 10 12 
6 16

correct output
4

user output
1 16 2 2 5 7
2 16 6 3 5 8
3 16 12 4 4 8
4 16 20 5 4 9
4

Test 10

Verdict:

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

correct output
5

user output
1 22 2 2 6 8
2 22 6 3 6 9
3 22 12 4 5 9
4 22 20 5 5 10
5 22 30 6 4 10
...

Test 11

Verdict:

input
16
15 13 11 9 7 5 3 1 2 4 6 8 10 ...

correct output
5.6

user output
1 28 2 2 7 9
2 28 6 3 7 10
3 28 12 4 6 10
4 28 20 5 6 11
5 28 30 6 5 11
...

Test 12

Verdict:

input
18
17 15 13 11 9 7 5 3 1 2 4 6 8 ...

correct output
6

user output
1 36 2 2 8 10
2 36 6 3 8 11
3 36 12 4 7 11
4 36 20 5 7 12
5 36 30 6 6 12
...

Test 13

Verdict:

input
20
19 17 15 13 11 9 7 5 3 1 2 4 6...

correct output
7

user output
1 44 2 2 9 11
2 44 6 3 9 12
3 44 12 4 8 12
4 44 20 5 8 13
5 44 30 6 7 13
...
Truncated

Test 14

Verdict:

input
25
5 1 24 14 24 11 13 11 9 9 4 6 ...

correct output
6

user output
4 11 6 6 10 12
6 11 18 9 10 13
6

Test 15

Verdict:

input
30
29 27 25 23 21 19 17 15 13 11 ...

correct output
10

user output
1 99 2 2 14 16
2 99 6 3 14 17
3 99 12 4 13 17
4 99 20 5 13 18
5 99 30 6 12 18
...
Truncated

Test 16

Verdict:

input
40
39 37 35 33 31 29 27 25 23 21 ...

correct output
13.4615

user output
1 175 2 2 19 21
2 175 6 3 19 22
3 175 12 4 18 22
4 175 20 5 18 23
5 175 30 6 17 23
...
Truncated

Test 17

Verdict:

input
50
49 47 45 43 41 39 37 35 33 31 ...

correct output
17

user output
1 273 2 2 24 26
2 273 6 3 24 27
3 273 12 4 23 27
4 273 20 5 23 28
5 273 30 6 22 28
...
Truncated

Test 18

Verdict:

input
70
69 67 65 63 61 59 57 55 53 51 ...

correct output
23.2609

user output
1 535 2 2 34 36
2 535 6 3 34 37
3 535 12 4 33 37
4 535 20 5 33 38
5 535 30 6 32 38
...
Truncated

Test 19

Verdict: ACCEPTED

input
1

1 1

correct output
1

user output
1

Test 20

Verdict: ACCEPTED

input
2
3 2 
1 16

correct output
3

user output
3

Test 21

Verdict: ACCEPTED

input
3
6 4 3 
3 81

correct output
3

user output
3

Test 22

Verdict: ACCEPTED

input
5
14 8 5 24 16 
5 625

correct output
16

user output
16

Test 23

Verdict:

input
6
19 11 6 34 23 35 
3 1296

correct output
19

user output
6 1296 11 11 2 4
11 1296 38 19 1 4
19

Test 24

Verdict: ACCEPTED

input
8
32 18 9 61 39 62 32 35 
4 4096

correct output
61

user output
61

Test 25

Verdict:

input
9
40 22 10 77 49 78 40 44 39 
3 6561

correct output
40

user output
10 6561 22 22 2 4
22 6561 80 40 1 4
40

Test 26

Verdict: ACCEPTED

input
10
49 26 12 94 60 96 49 54 48 39 
4 10000

correct output
94

user output
94

Test 27

Verdict:

input
12
69 36 15 135 85 138 69 76 67 5...

correct output
69

user output
15 20736 36 36 2 4
36 20736 138 69 1 4
69

Test 28

Verdict:

input
14
93 47 18 184 114 187 93 102 90...

correct output
141

user output
90 38416 510 102 8 14
102 38416 987 141 6 14
141

Test 29

Verdict:

input
16
121 60 22 240 148 244 120 132 ...

correct output
240

user output
148 65536 240 240 4 6
240

Test 30

Verdict:

input
18
151 74 25 303 186 308 151 166 ...

correct output
303

user output
186 104976 303 303 4 6
303

Test 31

Verdict:

input
20
186 90 29 374 229 381 185 204 ...

correct output
286

user output
97 160000 290 145 11 14
145 160000 720 180 9 14
180 160000 1020 204 8 14
204 160000 2002 2

...
Truncated

Test 32

Verdict:

input
25
287 136 40 584 355 594 286 316...

correct output
516

user output
147 390625 446 223 11 14
223 390625 1108 277 9 14
277 390625 1580 316 8 14
316 390625 3115

...
Truncated

Test 33

Verdict:

input
30
409 191 52 841 508 855 409 452...

correct output
656

user output
624 810000 4592 656 22 30
656

Test 34

Verdict:

input
40
720 328 80 1494 898 1519 719 7...

correct output
1519

user output
1009 2.56e+06 1027 1027 20 22
1027 2.56e+06 7910 1130 14 22
1130 2.56e+06 19755 1317 6 22

...
Truncated

Test 35

Verdict:

input
50
1118 503 113 2333 1397 2372 11...

correct output
2372

user output
1814 6.25e+06 15792 1974 22 31
1974 6.25e+06 20550 2055 22 33
2055 6.25e+06 55718 2143 6 3

...
Truncated

Test 36

Verdict:

input
70
2176 964 195 4570 2725 4648 21...

correct output
4648

user output
2904 2.401e+07 16845 3369 24 3...
Truncated

Test 37

Verdict:

input
100
4416 1932 356 9323 5542 9483 4...

correct output
9700

user output
1158 1e+08 2296 2296 54 56
2296 1e+08 4674 2337 53 56
2337 1e+08 17103 5701 52 56
5701 1e+

...
Truncated

Test 38

Verdict: ACCEPTED

input
500
104548 249301 180224 233177 52...

correct output
104548

user output
104548

Test 39

Verdict:

input
600
150482 358999 259492 335771 64...

correct output
353835

user output
69341 1.296e+11 392164 196082 ...
Truncated

Test 40

Verdict:

input
900
446578 58127 573897 680544 236...

correct output
790626

user output
743723 6.561e+11 1.04994e+07 7...
Truncated

Test 41

Verdict:

input
900
783372 729637 443692 140636 78...

correct output
805592

user output
773691 6.561e+11 2.00379e+07 8...
Truncated

Test 42

Verdict:

input
100
4416 1932 356 9323 5542 9483 4...

correct output
9700

user output
1158 1e+08 2296 2296 54 56
2296 1e+08 4674 2337 53 56
2337 1e+08 17103 5701 52 56
5701 1e+

...
Truncated

Test 43

Verdict: ACCEPTED

input
500
104548 249301 180224 233177 52...

correct output
104548

user output
104548

Test 44

Verdict:

input
600
150482 358999 259492 335771 64...

correct output
353835

user output
69341 1.296e+11 392164 196082 ...
Truncated