Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <vector>
- #include <algorithm>
- #include <set>
- using namespace std;
- int main()
- {
- #ifdef _DEBUG
- freopen("input.txt", "r", stdin);
- freopen("output.txt", "w", stdout);
- #endif
- int n, x; scanf("%d%d", &n, &x);
- vector<int> a(n);
- for(int i = 0; i < n; i++) scanf("%d", &a[i]);
- set<int> z;
- z.insert(a[0]);
- z.insert(-a[0]);
- for(int i = 1; i < n; i++){
- int cur = z.size();
- set<int> v;
- for(auto it = z.begin(); it != z.end(); it++){
- v.insert(*it + a[i]);
- v.insert(*it - a[i]);
- }
- z = v;
- }
- for(auto it = z.begin(); it != z.end(); it++)
- if(*it == x){ printf("YES\n"); return 0;}
- printf("NO\n");
- return 0;
- }
Add Comment
Please, Sign In to add comment