visited배열을 사용할때는 append로 추가하지말고 false True로 할 수 있게 하자.
import sys
n = int(input())
lst = list(map(int, input().split()))
visited = [0] + [-1 for _ in range(2000000)]
lst.sort()
d = []
def dfs(s):
if s == n:
return
for i in range(s, n):
d.append(lst[i])
visited[sum(d)] = 1
dfs(i+1)
d.pop()
dfs(0)
print(visited.index(-1))