Balance

 

#include <bits/stdc++.h>
#define N 1000

using namespace std;

int n,k,sum;
int dp[N+5];
int A[N+5];

void input(){
    cin>>n;
    for(int i=1;i<=n;i++){
        cin>>A[i];
    }
    sort(A+1,A+n+1);
}

int DP(){
    if(A[1]==1)dp[1]=2;
    else return 1;
    dp[1]=A[1];
    for(int i=2;i<=n;i++){
        dp[i]=dp[i-1]+A[i];
    }
    A[n+1]=1e9;
    for(int i=1;i<=n;i++){
        if(dp[i]+1<A[i+1]) return dp[i]+1;
    }
}

int main(){
    cin.tie(0);
    ios::sync_with_stdio(false);
    //freopen("in.txt","r",stdin);
    input();
    cout<<DP()<<endl;
    return 0;
}

Comments