#include #include #include #include using namespace std; const int MAX_N = 500; const int MAX_K = MAX_N * 500; int N; int a[MAX_N + 10]; int p[MAX_K / 2 + 10][MAX_N + 10]; int main() { ifstream in; in.open("equation.in"); ofstream out; out.open("equation.out"); in >> N; int sum = 0; for(int i = 0; i < N; i ++) { in >> a[i]; sum += a[i]; } if(sum % 2 != 0) { out << "NO"; return 0; } int K = sum / 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"); }