Submission details
Task:Missing Coin Sum
Sender:Isak
Submission time:2025-11-27 14:25:12 +0200
Language:C++ (C++20)
Status:READY
Result:ACCEPTED
Test results
testverdicttime
#1ACCEPTED0.00 sdetails
#2ACCEPTED0.00 sdetails
#3ACCEPTED0.00 sdetails
#4ACCEPTED0.05 sdetails
#5ACCEPTED0.06 sdetails
#6ACCEPTED0.06 sdetails
#7ACCEPTED0.00 sdetails
#8ACCEPTED0.02 sdetails
#9ACCEPTED0.00 sdetails
#10ACCEPTED0.00 sdetails

Code

#include <stdint.h>
#include <stdlib.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <stdbool.h>

#define LOOP(i,s,e) for (uint64_t i = (s); i < (e); i++)
#define SCAN(...) if (scanf(__VA_ARGS__) == 0) return EXIT_FAILURE

int comp(const void *a, const void *b){
    uint64_t *ai = (uint64_t*) a;
    uint64_t *bi = (uint64_t*) b;
    if (*ai == *bi)
        return 0;
    if (*ai < *bi)
        return -1;
    // (*ai > *bi)
    return 1;
}

int main() {
    uint64_t n = 0;
    SCAN("%ld", &n);

    // main algo

    uint64_t coins[n];

    LOOP(i, 0, n)
        SCAN("%ld", coins + i);

    qsort(coins, n, sizeof(uint64_t), comp);

    uint64_t acc = 0;
    LOOP(i, 0, n){
        if (acc + 1 < coins[i]){
            printf("%ld\n", acc + 1);
            exit(EXIT_SUCCESS);
        }
        acc += coins[i];
    }
    printf("%ld\n", acc + 1);

    return EXIT_SUCCESS;
}

Test details

Test 1

Verdict: ACCEPTED

input
4
2 1 4 3

correct output
11

user output
11

Test 2

Verdict: ACCEPTED

input
4
2 2 2 2

correct output
1

user output
1

Test 3

Verdict: ACCEPTED

input
6
1 9 9 1 2 2

correct output
7

user output
7

Test 4

Verdict: ACCEPTED

input
200000
38 62 12 96 82 18 48 47 22 3 6...

correct output
10114269

user output
10114269

Test 5

Verdict: ACCEPTED

input
200000
321076699 332784673 745614086 ...

correct output
1

user output
1

Test 6

Verdict: ACCEPTED

input
200000
1 136292223 60613622 935902310...

correct output
5069547

user output
5069547

Test 7

Verdict: ACCEPTED

input
60
1 2 4 8 16 32 64 128 256 512 1...

correct output
31073741824

user output
31073741824

Test 8

Verdict: ACCEPTED

input
100000
1 2 4 8 16 32 64 128 256 512 1...

correct output
53672058814464

user output
53672058814464

Test 9

Verdict: ACCEPTED

input
10
1 1 1 1 1 1 1 1 2 7

correct output
18

user output
18

Test 10

Verdict: ACCEPTED

input
2
1 1

correct output
3

user output
3