#include <iostream>
#include<vector>
using namespace std;
int main() {
int n;
int sum=0;
cin>>n;
vector<int> a(n+1);
for(int i=1;i<=n;i++)cin>>a[i],sum+=a[i];
if(sum%2)
{
cout<<"false";
return 0;
}
vector<vector<bool>> dp(n+1,vector<bool>(sum/2+1));
dp[0][0]=true;
for(int i=1;i<=n;i++)
{
for(int j=1;j<=sum/2;j++)
{
dp[i][j]=dp[i-1][j];
if(j-a[i]>=0&&dp[i-1][j-a[i]])dp[i][j]=true;
}
}
if(dp[n][sum/2])cout<<"true";
else cout<<"false";
}
//优化
#include <iostream>
#include<vector>
using namespace std;
int main() {
int n;
int sum=0;
cin>>n;
vector<int> a(n+1);
for(int i=1;i<=n;i++)cin>>a[i],sum+=a[i];
if(sum%2)
{
cout<<"false";
return 0;
}
vector<bool> dp(sum/2+1);
dp[0]=true;
for(int i=1;i<=n;i++)
{
for(int j=sum/2;j>=a[i];j--)
{
if(dp[j-a[i]])dp[j]=true;
}
}
if(dp[sum/2])cout<<"true";
else cout<<"false";
}
// 64 位输出请用 printf("%lld")
// 64 位输出请用 printf("%lld")