#include #include #include #include #include #include #include #include #include #include #include #include #include #define endl '\n' #define ALL(a) (a).begin(),(a).end() #define SZ(a) int((a).size()) #define FOR(i,a,b) for(int i=(a);i<(b);++i) #define REP(i,n) FOR(i,0,n) using namespace std; typedef pair P; typedef long long int LL; bool dp[100][20000+1]; const int D=10000; int main() { ios::sync_with_stdio(false); cin.tie(0); int N; cin>>N; std::vector W(N); REP(i,N) cin>>W[i]; dp[0][D+W[0]]=true; dp[0][D-W[0]]=true; FOR(i,1,N+1){ FOR(j,-10000,10000+1){ if(0<=j+D+W[i]&&j+D+W[i]<20000+1&&dp[i-1][D+j+W[i]]){ dp[i][D+j]=true; } if(0<=j+D-W[i]&&j+D-W[i]<20000+1&&dp[i-1][D+j-W[i]]){ dp[i][D+j]=true; } } } /* REP(i,N){ FOR(j,-10,11){ cout<