https://www.acmicpc.net/problem/14225
from itertools import combinations
n = int(input())
s = list(map(int, input().split()))
total = sum(s)
nums = set(s)
nums.add(total)
# 수열 길이 / 2 개 까지만 경우의 수 구함
for count in range(1, n//2+1):
for combi in combinations(s, count):
num = sum(combi) # count개 합
nums.update((num, total-num)) # count 합, n-count 합
# 제일 작은 자연수 탐색
answer = 1
while answer in nums:
answer += 1
print(answer)