#include<bits/stdc++.h>
#define int long long
using namespace std;
struct node
{
int val,t[1145];
}dp[114514];
int n,a[1145],sum;
signed main()
{
freopen("lucky.in","r",stdin);
freopen("lucky.out","w",stdout);
cin>>n;
for(int i=1;i<=n;i++)
cin>>a[i],sum+=a[i];
dp[0].val=1;
for(int i=1;i<=n;i++)
for(int j=sum;j>=a[i];j--)
{
dp[j].t[i]++;
dp[j].val+=dp[j-a[i]].val;
}
int maxn=0;
for(int i=1;i<=sum;i++)
{
if(dp[i].val>=2)
{
int k=0;
for(int j=1;j<=n;j++)
if(dp[i].t[j])
k+=a[j];
if(k/2==i)
maxn=i;
}
}
cout<<sum-maxn;
return 0;
}