#include using namespace std; int main() { int64_t N, M, L; cin >> N >> M >> L; vector A(N); for (int64_t& a : A) { cin >> a; } const int64_t max_A = *max_element(A.begin(), A.end()); const int64_t K = max(L, max_A); vector can_make(K + 1, false); can_make[L] = true; for (int64_t i = 0; i < N; i++) { vector next_can_make = can_make; for (int64_t j = 0; j <= K; j++) { if (can_make[j]) { const int64_t nj = (j + A[i]) / 2; next_can_make[nj] = true; } } can_make = next_can_make; } cout << (can_make[M] ? "Yes" : "No") << endl; }