Submission details
Task:Apple Division
Sender:hy2025_003
Submission time:2025-09-03 16:35:55 +0300
Language:C++ (C++20)
Status:READY
Result:ACCEPTED
Test results
testverdicttime
#1ACCEPTED0.00 sdetails
#2ACCEPTED0.00 sdetails
#3ACCEPTED0.00 sdetails
#4ACCEPTED0.00 sdetails
#5ACCEPTED0.00 sdetails
#6ACCEPTED0.00 sdetails
#7ACCEPTED0.09 sdetails
#8ACCEPTED0.09 sdetails
#9ACCEPTED0.09 sdetails
#10ACCEPTED0.09 sdetails
#11ACCEPTED0.09 sdetails
#12ACCEPTED0.09 sdetails
#13ACCEPTED0.00 sdetails
#14ACCEPTED0.00 sdetails
#15ACCEPTED0.00 sdetails
#16ACCEPTED0.00 sdetails
#17ACCEPTED0.09 sdetails
#18ACCEPTED0.05 sdetails

Code

/* ================================ MAKEFILE ===================================
 * CXXFLAGS=-std=c++20 -x c++ -Wall -fsanitize=undefined,address -pipe -g
 * ============================== CLion Setup ==================================
 * Alt F12 Rebind: File >> Setting >> Keymap >> Tool Windows >> Terminal */
// Basic
#include <bits/stdc++.h>                            
using namespace std;
using ll = long long;
const ll oo = *(ll*)"????????";
using vl = vector<ll>;
#define all(c) begin(c),end(c)
#define FOR(i,a,b) for (ll i=(a); i<(b); i++)
#define FORD(i,a,b) for (ll i=ll(b)-1; i>=(a); i--)
// Graphs                    // ============== random numbers =================
using vvl = vector<vl>;      // mt19937 rng($semirandom)
#define pb push_back         // ============== primes =========================
#define sz(c) ll((c).size()) // seq $from $to | factor | grep -v ' .* '
// pll                       // 2^30: +3, +7, +9, +385, -407
using pll = pair<ll,ll>;     // 2^60: +33, +91, +933, -753
using vpll = vector<pll>;  // =============== stress test script ==============
#define xx first           // for((i=1;;++i)); do
#define yy second          //   echo $i
// double                  //   ./gen > in
using dd = double;         //   diff -w <(./A < in) <(./brute < in) || break
const dd eps = 1e-9;       // done

#define TR(X) ({ if(1) cerr << __LINE__ << ": " #X " = " << (X) << endl; })

int main() { 
    cin.sync_with_stdio(0); cin.tie(0); 
    ll n; cin >> n;
    vector<ll> a(n);
    FOR(i, 0, n) cin >> a[i];

    ll res = oo;
    FOR(mask, 0, (1LL << n)){
        ll c1 = 0, c2 = 0;
        FOR(bit, 0, n){
            if((mask & (1LL << bit)) > 0)
                c1 += a[bit];
            else c2 += a[bit];
        }
        res = min(res, abs(c2 - c1));
    }
    cout << res << 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