Submission #1261756

#TimeUsernameProblemLanguageResultExecution timeMemory
1261756islam_2010Bank (IZhO14_bank)C++20
44 / 100
78 ms328 KiB
#include <bits/stdc++.h> #define int long long using namespace std; const int sz = 25; int n, m; int a[sz], b[sz]; vector<bool> used(sz, false); signed main(){ cin >> n >> m; unordered_map<int, int> mp; int x = 0; int ans = 0; for(int i = 0; i < n; i++){ cin >> a[i]; mp[a[i]]++; }for(int i = 0; i < m; i++){ cin >> b[i]; }for(int mask = 0; mask < (1 << m); mask++){ int s = 0, y = 0; for(int i = 0; i < m; i++){ if(mask&(1<<i) && !used[i]){ s += b[i]; y |= (1<<i); } }bool ok=false; int num; for(int i = 0; i < n; i++){ if(s == a[i] && mp[a[i]]){ num = a[i]; ok=true; break; } }if(ok){ mp[num]--; ans++; for(int i = 0; i < m; i++){ if(y&(1<<i)){ used[i] = true; } } } }if(ans == n){ cout << "YES\n"; }else { cout << "NO\n"; } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...