#include #include #include #include using namespace std; const int MAX_ = 500; const int _MAX_ = MAX_ * 500; int N; int a[MAX_ + 10]; int p[_MAX_ / 2 + 10][MAX_ + 10]; int main() { ifstream in; in.open("equation.in"); ofstream out; out.open("equation.out"); in >> N; int suberatel = 0; for(int i = 0; i < N; i ++) { in >> a[i]; suberatel += a[i]; } if(suberatel % 2 != 0) { out << "NO"; return 0; } int K = suberatel / 2; for(int i = 0; i <= K; ++ i) { p[i][0] = (i == 0); } for(int j = 1; j <= N; j ++ ) { for(int i = 0; i <= K; i ++) { if( p[i][j-1]) { p[i][j] = true; } else { if(a[j - 1] > i) continue; if(p[i - a[j - 1]][j-1]) { p[i][j] = true; } } } } out << (p[K][N] == 1 ? "YES" : "NO"); }