#include<bits/stdc++.h>/*#include <stdio.h>
#include <algorithm>
#include<iostream>
#include <stdlib.h>*///#pragma GCC optimize(3,"Ofast","inline")
using namespace std;
typedef long long ll;const int maxn=1e6+50;const int N=2e6+15;const ll mod =1e9+7;const int inf=2e9+7;
bitset<N>dp;
int main(){
int n,s=0;scanf("%d",&n);
dp[0]=1;for(int i=0; i<n; i++){
int tmp;scanf("%d",&tmp);
s+=tmp;
dp|=dp<<tmp;}for(int i=(s+1)/2;i<=s; i++){if(dp[i]){printf("%d\n",i);break;}}return0;}