# -*- coding: utf-8 -*- # python template for atcoder1 import sys sys.setrecursionlimit(10**9) input = sys.stdin.readline N = int(input()) items = [int(input()) for _ in range(N)] dp = [float('inf')]*(1 << N) dp[0] = 0 for mask in range(1 << N): for new_item in range(N): if mask >> new_item & 1: # new item has already boudht continue bought_sum = 0 for i in range(N): if mask >> i & 1: bought_sum += items[i] bought_sum %= 1000 #bought_sum=sum([N[i] for i in range(N) if mask>>i&1]) new_state = mask | 1 << new_item dp[new_state] = min(dp[new_state], dp[mask] + max(0, items[new_item]-bought_sum)) print(dp[-1])