CSES - Aalto Competitive Programming 2024 - wk6 - Mon - Results
Submission details
Task:Programming contest
Sender:louaha1
Submission time:2024-10-07 17:18:20 +0300
Language:C++ (C++11)
Status:READY
Result:
Test results
testverdicttime
#10.00 sdetails
#20.00 sdetails
#30.00 sdetails
#40.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
#190.00 sdetails
#200.00 sdetails
#210.00 sdetails
#220.00 sdetails
#230.00 sdetails
#240.00 sdetails
#250.00 sdetails
#260.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
#380.00 sdetails
#390.00 sdetails
#400.00 sdetails
#410.00 sdetails
#420.00 sdetails
#430.00 sdetails
#440.00 sdetails
#450.00 sdetails
#460.00 sdetails
#470.00 sdetails
#480.00 sdetails
#490.00 sdetails
#500.00 sdetails
#510.00 sdetails
#520.00 sdetails
#530.00 sdetails
#540.00 sdetails
#550.00 sdetails
#560.00 sdetails
#570.00 sdetails
#580.00 sdetails
#590.00 sdetails
#600.00 sdetails
#610.00 sdetails
#620.00 sdetails
#630.01 sdetails
#640.01 sdetails
#650.01 sdetails
#660.01 sdetails
#670.01 sdetails
#680.01 sdetails
#690.01 sdetails
#700.01 sdetails
#710.01 sdetails
#720.01 sdetails
#730.07 sdetails
#740.07 sdetails
#750.07 sdetails
#760.07 sdetails
#770.07 sdetails
#780.07 sdetails
#790.07 sdetails
#800.07 sdetails
#810.07 sdetails
#820.07 sdetails
#830.07 sdetails
#840.07 sdetails
#850.07 sdetails
#860.07 sdetails

Code

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

using namespace std;

int main() {
    int n;
    cin >> n;
    
    vector<int> m(n), p(n);
    for (int i = 0; i < n; ++i) {
        cin >> m[i];
    }
    for (int i = 0; i < n; ++i) {
        cin >> p[i];
    }
    
    priority_queue<int, vector<int>, greater<int>> pq;  
    long long totalTime = 0;
    long long maxPoints = 0;
    
    for (int i = 0; i < n; ++i) {
        totalTime += m[i]; 
        pq.push(p[i]);     
        maxPoints += p[i];  
        
        if (totalTime > m[i]) {  
            maxPoints -= pq.top();  
            pq.pop();             
        }
    }
    
    cout << maxPoints << endl;
    
    return 0;
}

Test details

Test 1

Verdict:

input
1
15 
13 

correct output
0

user output
13

Test 2

Verdict:

input
2
19 20 
13 20 

correct output
0

user output
20

Test 3

Verdict:

input
2
1 2 
16 17 

correct output
29

user output
17

Test 4

Verdict:

input
3
8 12 17 
8 12 13 

correct output
0

user output
13

Test 5

Verdict:

input
3
8 12 17 
8 12 13 

correct output
0

user output
13

Test 6

Verdict:

input
3
1 2 3 
10 6 1 

correct output
12

user output
10

Test 7

Verdict:

input
3
1 2 3 
18 14 8 

correct output
30

user output
18

Test 8

Verdict:

input
4
4 6 8 11 
17 12 11 20 

correct output
18

user output
20

Test 9

Verdict:

input
4
9 11 12 19 
20 20 16 18 

correct output
11

user output
20

Test 10

Verdict:

input
4
1 2 3 4 
9 11 2 5 

correct output
16

user output
11

Test 11

Verdict:

input
4
1 2 3 4 
4 10 18 15 

correct output
27

user output
18

Test 12

Verdict:

input
4
11 13 18 20 
1 2 14 15 

correct output
0

user output
15

Test 13

Verdict:

input
5
12 13 15 17 18 
15 19 14 16 17 

correct output
6

user output
19

Test 14

Verdict:

input
5
1 3 15 19 20 
13 20 11 12 11 

correct output
28

user output
20

Test 15

Verdict:

input
5
1 4 9 11 19 
15 14 13 13 11 

correct output
23

user output
15

Test 16

Verdict:

input
5
2 3 6 15 17 
15 16 19 14 19 

correct output
32

user output
19

Test 17

Verdict:

input
5
4 11 18 19 20 
5 12 13 14 15 

correct output
1

user output
15

Test 18

Verdict:

input
5
1 2 3 4 5 
2 18 17 5 8 

correct output
28

user output
18

Test 19

Verdict:

input
5
2 5 7 17 19 
1 3 8 12 20 

correct output
1

user output
20

Test 20

Verdict:

input
5
1 2 3 4 5 
5 16 7 9 20 

correct output
29

user output
20

Test 21

Verdict:

input
5
1 5 8 18 20 
1 5 9 11 17 

correct output
1

user output
17

Test 22

Verdict:

input
5
1 2 3 4 5 
8 11 10 10 1 

correct output
19

user output
11

Test 23

Verdict:

input
10
2 6 8 9 11 12 13 15 17 18 
20 12 14 15 18 18 15 15 16 14 

correct output
23

user output
20

Test 24

Verdict:

input
10
1 2 3 4 5 7 8 15 19 20 
14 13 17 14 20 15 19 14 13 17 

correct output
43

user output
20

Test 25

Verdict:

input
10
1 4 5 7 9 10 11 13 14 19 
11 13 15 12 16 16 19 15 17 11 

correct output
23

user output
19

Test 26

Verdict:

input
10
1 2 3 6 9 11 12 15 17 18 
11 10 12 12 10 11 14 17 10 11 

correct output
23

user output
17

Test 27

Verdict:

input
10
4 5 11 12 13 14 15 18 19 20 
1 3 5 6 9 13 14 16 19 20 

correct output
0

user output
20

Test 28

Verdict:

input
10
1 2 3 4 5 6 7 8 9 10 
2 18 17 5 8 19 20 10 2 13 

correct output
38

user output
20

Test 29

Verdict:

input
10
1 2 3 5 7 8 12 17 19 20 
2 7 9 9 10 11 11 13 13 17 

correct output
9

user output
17

Test 30

Verdict:

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

correct output
33

user output
20

Test 31

Verdict:

input
10
1 5 8 9 11 13 16 17 18 20 
3 9 9 10 11 11 12 15 18 19 

correct output
5

user output
19

Test 32

Verdict:

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

correct output
19

user output
11

Test 33

Verdict:

input
100
18795 20223 56726 60240 71053 ...

correct output
4890035

user output
997703

Test 34

Verdict:

input
100
115 18293 19372 27394 34180 39...

correct output
6552875

user output
982472

Test 35

Verdict:

input
100
25933 65302 79664 96553 106970...

correct output
3978147

user output
996980

Test 36

Verdict:

input
100
18753 20620 23123 23988 29883 ...

correct output
5937872

user output
995204

Test 37

Verdict:

input
100
5161 6232 8989 19030 35767 397...

correct output
176136

user output
967898

Test 38

Verdict:

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

correct output
51426569

user output
996214

Test 39

Verdict:

input
100
41707 54487 59593 64270 82478 ...

correct output
11320

user output
991356

Test 40

Verdict:

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

correct output
49363797

user output
986446

Test 41

Verdict:

input
100
11117 11402 21287 28739 32016 ...

correct output
141639

user output
978640

Test 42

Verdict:

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

correct output
52217614

user output
987117

Test 43

Verdict:

input
200
4697 9359 13575 18795 19993 20...

correct output
9389918

user output
999477

Test 44

Verdict:

input
200
115 2871 11672 18293 19372 273...

correct output
9859853

user output
998715

Test 45

Verdict:

input
200
5546 13021 25557 25933 27209 4...

correct output
7165521

user output
996046

Test 46

Verdict:

input
200
18753 20620 21231 23123 23988 ...

correct output
8314788

user output
999195

Test 47

Verdict:

input
200
5161 6232 8989 19030 21624 357...

correct output
90139

user output
997629

Test 48

Verdict:

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

correct output
98965271

user output
996214

Test 49

Verdict:

input
200
853 24517 36617 41385 41707 47...

correct output
44597

user output
992506

Test 50

Verdict:

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

correct output
100382390

user output
986446

Test 51

Verdict:

input
200
8311 8875 11117 11402 13410 21...

correct output
67695

user output
997344

Test 52

Verdict:

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

correct output
92786819

user output
992139

Test 53

Verdict:

input
1000
56 4050 4697 9243 9359 9691 97...

correct output
19745639

user output
999958

Test 54

Verdict:

input
1000
115 403 1014 2871 3019 4665 80...

correct output
22107472

user output
998955

Test 55

Verdict:

input
1000
124 1542 1884 2483 2584 3337 4...

correct output
22546809

user output
999500

Test 56

Verdict:

input
1000
479 746 2127 4268 6059 6696 98...

correct output
18678807

user output
999327

Test 57

Verdict:

input
1000
782 1357 2928 3874 3922 5161 6...

correct output
24195

user output
999590

Test 58

Verdict:

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

correct output
386011497

user output
998741

Test 59

Verdict:

input
1000
520 853 2625 4146 7236 7897 79...

correct output
25175

user output
998681

Test 60

Verdict:

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

correct output
386081788

user output
999523

Test 61

Verdict:

input
1000
745 929 1179 2177 2424 4167 45...

correct output
19304

user output
999776

Test 62

Verdict:

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

correct output
378585373

user output
999989

Test 63

Verdict:

input
10000
56 61 73 74 187 368 547 665 69...

correct output
70300404

user output
999973

Test 64

Verdict:

input
10000
97 115 142 394 399 403 590 742...

correct output
73062361

user output
999936

Test 65

Verdict:

input
10000
124 389 469 554 635 650 724 80...

correct output
66608855

user output
999937

Test 66

Verdict:

input
10000
15 270 396 479 513 568 703 746...

correct output
59816359

user output
999959

Test 67

Verdict:

input
10000
3 384 389 440 781 782 875 907 ...

correct output
6749

user output
999958

Test 68

Verdict:

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

correct output
505666198

user output
999944

Test 69

Verdict:

input
10000
35 190 210 272 485 520 577 853...

correct output
3928

user output
999756

Test 70

Verdict:

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

correct output
501551005

user output
999959

Test 71

Verdict:

input
10000
109 113 409 484 500 516 664 74...

correct output
11632

user output
999933

Test 72

Verdict:

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

correct output
495441709

user output
999989

Test 73

Verdict:

input
100000
5 21 25 33 47 56 61 73 74 100 ...

correct output
217817507

user output
999992

Test 74

Verdict:

input
100000
1 11 39 48 52 57 63 73 79 80 8...

correct output
211203417

user output
999988

Test 75

Verdict:

input
100000
21 25 44 52 60 72 86 110 111 1...

correct output
211728199

user output
1000000

Test 76

Verdict:

input
100000
13 15 24 38 45 47 62 63 66 80 ...

correct output
210855476

user output
999996

Test 77

Verdict:

input
100000
3 7 23 26 31 46 54 66 84 102 1...

correct output
1163

user output
999950

Test 78

Verdict:

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

correct output
505666198

user output
999998

Test 79

Verdict:

input
100000
7 18 19 33 35 40 43 52 56 65 7...

correct output
3267

user output
999985

Test 80

Verdict:

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

correct output
501551005

user output
999992

Test 81

Verdict:

input
100000
2 8 13 20 23 29 39 41 71 73 76...

correct output
4223

user output
999999

Test 82

Verdict:

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

correct output
495441709

user output
999997

Test 83

Verdict:

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

correct output
941809245

user output
1000000

Test 84

Verdict:

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

correct output
499016214

user output
999990

Test 85

Verdict:

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

correct output
495159245

user output
999992

Test 86

Verdict:

input
100000
1 18 33 39 41 64 73 97 98 106 ...

correct output
220537561

user output
999998