Submission details
Task:Cow heist
Sender:aalto25b_011
Submission time:2025-09-10 17:11:50 +0300
Language:C++ (C++20)
Status:READY
Result:
Test results
testverdicttime
#1ACCEPTED0.00 sdetails
#2ACCEPTED0.00 sdetails
#3ACCEPTED0.00 sdetails
#4ACCEPTED0.00 sdetails
#5ACCEPTED0.00 sdetails
#6ACCEPTED0.00 sdetails
#7ACCEPTED0.00 sdetails
#8ACCEPTED0.00 sdetails
#9ACCEPTED0.00 sdetails
#10ACCEPTED0.00 sdetails
#11ACCEPTED0.00 sdetails
#12ACCEPTED0.00 sdetails
#13ACCEPTED0.00 sdetails
#14ACCEPTED0.00 sdetails
#15ACCEPTED0.00 sdetails
#16ACCEPTED0.00 sdetails
#17ACCEPTED0.00 sdetails
#18ACCEPTED0.00 sdetails
#19ACCEPTED0.00 sdetails
#20ACCEPTED0.00 sdetails
#21ACCEPTED0.00 sdetails
#22ACCEPTED0.00 sdetails
#23ACCEPTED0.00 sdetails
#24ACCEPTED0.00 sdetails
#25ACCEPTED0.00 sdetails
#26ACCEPTED0.00 sdetails
#27ACCEPTED0.00 sdetails
#280.11 sdetails
#29--details
#300.08 sdetails
#310.42 sdetails
#32--details
#33--details
#340.04 sdetails
#350.08 sdetails
#36--details
#37--details
#38--details
#39--details
#40--details
#41--details
#42--details
#43--details
#44--details
#45--details
#46--details
#47--details
#48--details
#49--details
#50--details
#51--details
#52--details
#53--details
#54--details
#55--details
#56--details
#57--details
#580.05 sdetails
#590.05 sdetails
#600.05 sdetails
#610.05 sdetails
#620.06 sdetails

Compiler report

input/code.cpp: In function 'int main()':
input/code.cpp:59:13: warning: unused variable 'diff' [-Wunused-variable]
   59 |         int diff = farms[i] - close;
      |             ^~~~
input/code.cpp:21:23: warning: array subscript -1 is outside array bounds of 'int [30]' [-Warray-bounds]
   21 |     if ((sum + beams[i] > wanted))
      |                ~~~~~~~^
input/code.cpp:48:9: note: while referencing 'beams'
   48 |     int beams[30] = {0};
      |         ^~~~~

Code

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

using namespace std;

template <class T>
void print_v(vector<T> &v) { cout << "{"; for (auto x : v) cout << x << ","; cout << "\b}"; }

int closest(const int wanted, int i, int sum, const int beams[30])
{
    if (i == 30)
        return sum;
    if (i != -1)
    {
    if (beams[i] == 0)
        return sum;
    }
    if (sum == wanted)
        return sum; 
    if ((sum + beams[i] > wanted))
        return sum;
    int a = closest(wanted, i + 1, sum + beams[i], beams);
    int b = closest(wanted, i + 1, sum, beams);

    if (a > b)
        return a;
    return b;

}


int main()
{
    int n;
    cin >> n;

    vector<int> farms;
    for (int i = 0; i < n; i++)
    {
        int a;
        cin >> a;
        farms.push_back(a);
    }

    sort(farms.begin(), farms.end());

    int beams[30] = {0};
    int next_beam = 0;
    for (int i = 0; i < n; i++)
    {


        int close = closest(farms[i], -1, 0, beams);
        cout << close << "\t" << farms[i] << "\n";
        if (close == farms[i])
            continue;

        int diff = farms[i] - close;
        
        beams[next_beam] = farms[i];
        next_beam++;
    }
    for (int i = 0; i < 30; i++)
        cout << beams[i] << " ";
    cout << "\n";
    return 0;
}

Test details

Test 1

Verdict: ACCEPTED

input
1
11

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
0 11
11 0 0 0 0 0 0 0 0 0 0 0 0 0 0...

Test 2

Verdict: ACCEPTED

input
2
9 20

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
0 9
0 20
9 20 0 0 0 0 0 0 0 0 0 0 0 0 0...

Test 3

Verdict: ACCEPTED

input
3
18 2 8

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
0 2
0 8
0 18
2 8 18 0 0 0 0 0 0 0 0 0 0 0 0...

Test 4

Verdict: ACCEPTED

input
3
4 9 15

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
0 4
0 9
0 15
4 9 15 0 0 0 0 0 0 0 0 0 0 0 0...

Test 5

Verdict: ACCEPTED

input
3
4 16 15

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
0 4
0 15
0 16
4 15 16 0 0 0 0 0 0 0 0 0 0 0 ...

Test 6

Verdict: ACCEPTED

input
4
8 10 6 14

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
0 6
0 8
0 10
0 14
6 8 10 14 0 0 0 0 0 0 0 0 0 0 ...

Test 7

Verdict: ACCEPTED

input
4
14 15 6 9

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
0 6
0 9
0 14
0 15
6 9 14 15 0 0 0 0 0 0 0 0 0 0 ...

Test 8

Verdict: ACCEPTED

input
5
11 12 15 17 13

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
0 11
0 12
0 13
0 15
0 17
...
Truncated

Test 9

Verdict: ACCEPTED

input
5
9 20 15 19 1

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
0 1
0 9
0 15
0 19
0 20
...

Test 10

Verdict: ACCEPTED

input
5
9 4 1 19 11

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
0 1
0 4
0 9
0 11
0 19
...

Test 11

Verdict: ACCEPTED

input
5
12 2 15 17 6

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
0 2
0 6
0 12
0 15
0 17
...

Test 12

Verdict: ACCEPTED

input
5
20 19 11 4 20

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
0 4
0 11
0 19
0 20
0 20
...

Test 13

Verdict: ACCEPTED

input
5
5 2 18 17 5

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
0 2
0 5
0 5
0 17
0 18
...

Test 14

Verdict: ACCEPTED

input
5
18 19 7 5 17

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
0 5
0 7
0 17
0 18
0 19
...

Test 15

Verdict: ACCEPTED

input
5
2 5 16 7 9

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
0 2
0 5
0 7
0 9
0 16
...

Test 16

Verdict: ACCEPTED

input
5
18 1 20 5 18

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
0 1
0 5
0 18
0 18
0 20
...

Test 17

Verdict: ACCEPTED

input
5
1 8 11 10 10

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
0 1
0 8
0 10
0 10
0 11
...

Test 18

Verdict: ACCEPTED

input
10
11 12 15 17 13 18 11 17 9 13

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
0 9
0 11
0 11
0 12
0 13
...
Truncated

Test 19

Verdict: ACCEPTED

input
10
9 20 15 19 1 3 7 20 3 5

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
0 1
0 3
0 3
0 5
0 7
...
Truncated

Test 20

Verdict: ACCEPTED

input
10
9 4 1 19 11 19 9 10 9 7

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
0 1
0 4
0 7
0 9
0 9
...
Truncated

Test 21

Verdict: ACCEPTED

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

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
0 2
0 3
0 6
0 9
0 11
...
Truncated

Test 22

Verdict: ACCEPTED

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

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
0 4
0 11
0 12
0 13
0 14
...
Truncated

Test 23

Verdict: ACCEPTED

input
10
5 2 18 17 5 8 19 20 10 2

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
0 2
0 2
0 5
0 5
0 8
...
Truncated

Test 24

Verdict: ACCEPTED

input
10
18 19 7 5 17 2 1 8 3 20

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
0 1
0 2
0 3
0 5
0 7
...
Truncated

Test 25

Verdict: ACCEPTED

input
10
2 5 16 7 9 20 15 10 20 7

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
0 2
0 5
0 7
0 7
0 9
...
Truncated

Test 26

Verdict: ACCEPTED

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

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
0 1
0 5
0 5
0 8
0 9
...
Truncated

Test 27

Verdict: ACCEPTED

input
10
1 8 11 10 10 1 3 7 3 1

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
0 1
0 1
0 1
0 3
0 3
...
Truncated

Test 28

Verdict:

input
100
548938 592979 715351 844456 60...

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
(empty)

Error:
*** stack smashing detected ***: terminated

Test 29

Verdict:

input
100
417116 997410 720487 932768 11...

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
(empty)

Test 30

Verdict:

input
100
436094 185124 25933 931751 549...

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
(empty)

Error:
*** stack smashing detected ***: terminated

Test 31

Verdict:

input
100
550922 70741 708308 840139 290...

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
(empty)

Error:
*** stack smashing detected ***: terminated

Test 32

Verdict:

input
100
967248 900825 547356 172735 97...

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
(empty)

Test 33

Verdict:

input
100
222044 55193 870929 831516 206...

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
(empty)

Test 34

Verdict:

input
100
893062 947690 332055 209454 82...

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
(empty)

Error:
*** stack smashing detected ***: terminated

Test 35

Verdict:

input
100
76326 227391 780095 319045 438...

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
(empty)

Error:
*** stack smashing detected ***: terminated

Test 36

Verdict:

input
100
873627 11117 968759 239494 869...

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
(empty)

Test 37

Verdict:

input
100
10377 364544 501988 499243 495...

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
(empty)

Test 38

Verdict:

input
200
548938 592979 715351 844456 60...

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
(empty)

Test 39

Verdict:

input
200
417116 997410 720487 932768 11...

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
(empty)

Test 40

Verdict:

input
200
436094 185124 25933 931751 549...

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
(empty)

Test 41

Verdict:

input
200
550922 70741 708308 840139 290...

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
(empty)

Test 42

Verdict:

input
200
967248 900825 547356 172735 97...

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
(empty)

Test 43

Verdict:

input
200
222044 55193 870929 831516 206...

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
(empty)

Test 44

Verdict:

input
200
893062 947690 332055 209454 82...

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
(empty)

Test 45

Verdict:

input
200
76326 227391 780095 319045 438...

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
(empty)

Test 46

Verdict:

input
200
873627 11117 968759 239494 869...

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
(empty)

Test 47

Verdict:

input
200
10377 364544 501988 499243 495...

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
(empty)

Test 48

Verdict:

input
1000
548938 592979 715351 844456 60...

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
(empty)

Test 49

Verdict:

input
1000
417116 997410 720487 932768 11...

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
(empty)

Test 50

Verdict:

input
1000
436094 185124 25933 931751 549...

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
(empty)

Test 51

Verdict:

input
1000
550922 70741 708308 840139 290...

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
(empty)

Test 52

Verdict:

input
1000
967248 900825 547356 172735 97...

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
(empty)

Test 53

Verdict:

input
1000
222044 55193 870929 831516 206...

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
(empty)

Test 54

Verdict:

input
1000
893062 947690 332055 209454 82...

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
(empty)

Test 55

Verdict:

input
1000
76326 227391 780095 319045 438...

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
(empty)

Test 56

Verdict:

input
1000
873627 11117 968759 239494 869...

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
(empty)

Test 57

Verdict:

input
1000
10377 364544 501988 499243 495...

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
(empty)

Test 58

Verdict:

input
100000
548938 592979 715351 844456 60...

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
(empty)

Test 59

Verdict:

input
100000
417116 997410 720487 932768 11...

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
(empty)

Test 60

Verdict:

input
100000
436094 185124 25933 931751 549...

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
(empty)

Test 61

Verdict:

input
100000
550922 70741 708308 840139 290...

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
(empty)

Test 62

Verdict:

input
100000
967248 900825 547356 172735 97...

correct output
1 2 4 8 16 32 64 128 256 512 1...

user output
(empty)