Submission #1178689

#TimeUsernameProblemLanguageResultExecution timeMemory
1178689GoBananas69Bank (IZhO14_bank)C++20
46 / 100
1 ms836 KiB
#include <iostream> #include <vector> #include <unordered_set> using namespace std; bool solve_dp_optimized(const vector<int>& a, const vector<int>& b) { unordered_set<int> possible_sums = {0}; for (int num : b) { unordered_set<int> new_sums; for (int sum : possible_sums) { new_sums.insert(sum + num); } for (int sum : new_sums) { possible_sums.insert(sum); } } for (int target : a) { if (!possible_sums.count(target)) { return false; } } return true; } int main() { int n, m; cin >> n >> m; vector<int> a(n), b(m); for (int &x : a) cin >> x; for (int &x : b) cin >> x; if (solve_dp_optimized(a, b)) cout << "YES\n"; else cout << "NO\n"; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...