Submission details
Task:Apple Division
Sender:aalto26aw_002
Submission time:2026-09-02 17:50: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.18 sdetails
#8ACCEPTED0.18 sdetails
#9ACCEPTED0.18 sdetails
#10ACCEPTED0.17 sdetails
#11ACCEPTED0.18 sdetails
#120.18 sdetails
#13ACCEPTED0.00 sdetails
#14ACCEPTED0.00 sdetails
#15ACCEPTED0.00 sdetails
#16ACCEPTED0.00 sdetails
#170.18 sdetails
#18ACCEPTED0.09 sdetails

Compiler report

input/code.cpp: In function 'int main()':
input/code.cpp:34:26: warning: suggest parentheses around '+' inside '<<' [-Wparentheses]
   34 |     for (int i=0;i<=(1<<n+1);i++) {
      |                         ~^~

Code

#include <algorithm>
#include <cstdint>
#include <iostream>
#include <vector>
/*
sort(apples)
weightA=0
weightB=0
for (apples from last to first)
if (weightB=>weightA) {

    weightA+=appleweight
} else weightB+=appleweight;

return abs(weightA-weightB)
*/



int main() {
    using std::cin;
    using std::vector;
    int n;
    cin>>n;
    vector<int> apples;
    for (int i=0;i<n;i++) {
        int j;
        cin>>j;
        apples.emplace_back(j);
    }
    int minimum=2147483647;
    int count=0;
    //std::sort(apples.begin(),apples.end());
    for (int i=0;i<=(1<<n+1);i++) {
       int  weightA=0,weightB=0;
        count++;
        for (int j=0;j<n;j++) {
            if (i&(1<<j)) {
                weightA+=apples[j];
            } else {
                weightB+=apples[j];
            }
        }
        minimum=std::min(minimum,std::abs(weightA-weightB));
    }
    std::cout<<minimum<<std::endl;
}

Test details

Test 1

Verdict: ACCEPTED

input
10
603 324 573 493 659 521 654 70...

correct output
2

user output
2

Test 2

Verdict: ACCEPTED

input
10
952 775 292 702 859 719 65 943...

correct output
1

user output
1

Test 3

Verdict: ACCEPTED

input
10
141 156 14 487 250 230 741 602...

correct output
2

user output
2

Test 4

Verdict: ACCEPTED

input
10
963 359 731 826 599 931 40 86 ...

correct output
4

user output
4

Test 5

Verdict: ACCEPTED

input
10
238 224 861 461 558 860 318 93...

correct output
2

user output
2

Test 6

Verdict: ACCEPTED

input
10
193 848 70 53 864 886 374 31 2...

correct output
1

user output
1

Test 7

Verdict: ACCEPTED

input
20
13048212 423374770 19874608 81...

correct output
8231

user output
8231

Test 8

Verdict: ACCEPTED

input
20
314836307 815098885 922742346 ...

correct output
1188

user output
1188

Test 9

Verdict: ACCEPTED

input
20
846261131 196958704 824235264 ...

correct output
11770

user output
11770

Test 10

Verdict: ACCEPTED

input
20
92021619 792314463 937735495 8...

correct output
4453

user output
4453

Test 11

Verdict: ACCEPTED

input
20
452747515 202201476 845758891 ...

correct output
4881

user output
4881

Test 12

Verdict:

input
20
934033764 747013925 113297529 ...

correct output
5482

user output
4264

Feedback: Incorrect character on line 1 col 1: expected "5482", got "4264"

Test 13

Verdict: ACCEPTED

input
1
1000000000

correct output
1000000000

user output
1000000000

Test 14

Verdict: ACCEPTED

input
2
1 1

correct output
0

user output
0

Test 15

Verdict: ACCEPTED

input
1
1

correct output
1

user output
1

Test 16

Verdict: ACCEPTED

input
5
934033764 2 7 4 1

correct output
934033750

user output
934033750

Test 17

Verdict:

input
20
934033764 747013925 113297529 ...

correct output
5483

user output
4265

Feedback: Incorrect character on line 1 col 1: expected "5483", got "4265"

Test 18

Verdict: ACCEPTED

input
19
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ...

correct output
1

user output
1