| Task: | Apple Division |
| Sender: | aalto26aw_002 |
| Submission time: | 2026-09-02 18:58:26 +0300 |
| Language: | C++ (C++20) |
| Status: | READY |
| Result: | ACCEPTED |
| test | verdict | time | |
|---|---|---|---|
| #1 | ACCEPTED | 0.00 s | details |
| #2 | ACCEPTED | 0.00 s | details |
| #3 | ACCEPTED | 0.00 s | details |
| #4 | ACCEPTED | 0.00 s | details |
| #5 | ACCEPTED | 0.00 s | details |
| #6 | ACCEPTED | 0.00 s | details |
| #7 | ACCEPTED | 0.09 s | details |
| #8 | ACCEPTED | 0.09 s | details |
| #9 | ACCEPTED | 0.09 s | details |
| #10 | ACCEPTED | 0.09 s | details |
| #11 | ACCEPTED | 0.09 s | details |
| #12 | ACCEPTED | 0.09 s | details |
| #13 | ACCEPTED | 0.00 s | details |
| #14 | ACCEPTED | 0.00 s | details |
| #15 | ACCEPTED | 0.00 s | details |
| #16 | ACCEPTED | 0.00 s | details |
| #17 | ACCEPTED | 0.09 s | details |
| #18 | ACCEPTED | 0.04 s | details |
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)
*/
/*Total weight of apples do not fit in 32bit integers in tests I failed
* during the competition.
*/
int main() {
using std::cin;
using std::vector;
int n;
cin>>n;
vector<int64_t> apples;
for (int i=0;i<n;i++) {
int j;
cin>>j;
apples.emplace_back(j);
}
int64_t minimum=2147483647;
int count=0;
//std::sort(apples.begin(),apples.end());
for (int i=0;i<=(1<<n)+1;i++) {
int64_t weightA=0,weightB=0;
count++;
for (int j=0;j<n;j++) {
if (i&(1<<j)) {
weightA+=apples[j];
} else {
weightB+=apples[j];
}
}
if (weightA>=weightB) {
minimum=std::min(minimum,weightA-weightB);
} else {
minimum=std::min(minimum,weightB-weightA);
}
}
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: ACCEPTED
| input |
|---|
| 20 934033764 747013925 113297529 ... |
| correct output |
|---|
| 5482 |
| user output |
|---|
| 5482 |
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: ACCEPTED
| input |
|---|
| 20 934033764 747013925 113297529 ... |
| correct output |
|---|
| 5483 |
| user output |
|---|
| 5483 |
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 |
