모든 챌린지
보통 0명 해결 정답률 0%

Smallest Missing Coin Sum

Find the first positive amount that cannot be made from the available coins.

You may select any subset of the supplied coins. Each individual coin may be used at most once, even when multiple coins share a value. Find the smallest positive integer amount that no selection can produce.

Implement missing_coin_sum(coins).

Input

coins: The values of the available coins; duplicates represent separate coins.

Output

Return the smallest positive impossible amount.

제약 조건

1 ≤ number of coins ≤ 200,000. Each value is between 1 and 1,000,000,000.

예시

예시 1
입력:
coins = [1, 1, 4]

예상 출력:
expected = 3
입력:
std::vector<long long> coins = {1, 1, 4};

예상 출력:
long long expected = 3;
입력:
long[] coins = new long[] {1, 1, 4};

예상 출력:
long expected = 3;

설명

Amounts 1 and 2 use the one-valued coins. No available subset totals 3.

예시 2
입력:
coins = [2, 3]

예상 출력:
expected = 1
입력:
std::vector<long long> coins = {2, 3};

예상 출력:
long long expected = 1;
입력:
long[] coins = new long[] {2, 3};

예상 출력:
long expected = 1;

설명

There is no way to make 1 because every coin is worth at least 2.

참고 자료

이 문제는 CodeUtility에 맞게 수정되었습니다. 위의 설명과 제한 조건을 따르세요.

다른 사람의 풀이 보기

커뮤니티 솔루션

아직 공개된 풀이가 없습니다. 문제를 풀고 첫 풀이를 공유하세요.