Submission #1030692

#TimeUsernameProblemLanguageResultExecution timeMemory
1030692ziewaczBank (IZhO14_bank)C++17
19 / 100
307 ms80356 KiB
#include <bits/stdc++.h> #define imie(x...) cerr << "[" #x "]: ", [](auto... $) {((cerr << $ << "; "), ...); }(x), cerr << '\n' using namespace std; typedef long long ll; typedef long double ld; const int MOD = 1000000007; vector<vector<int>> gen(const vector<int>& a, int n){ vector<vector<int>> podzbiory; for(int maska = 0; maska < (1 << n); maska++){ vector<int> podzbior; for(int i = 0; i < n; i++){ if(maska & (1 << i)){ podzbior.push_back(a[i]); } } sort(podzbior.begin(), podzbior.end()); podzbiory.push_back(podzbior); } return podzbiory; } int main() { ios_base::sync_with_stdio(0); cin.tie(0); int n, m; cin >> n >> m; map<int, int> goscie; for(int i = 0; i < n; i++) { int x; cin >> x; goscie[x] = i; } vector<int> v(m); for(int i = 0; i < m; i++) { cin >> v[i]; } vector<vector<int>> a = gen(v, m); int ile = 0; bool ans = false; vector<bool> visited(m, false); for(auto &podzbior : a) { int S = 0; vector<int> xd; for(auto &i : podzbior) { if(!visited[i]) { S += i; xd.push_back(i); } } if(S != 0 && goscie.find(S) != goscie.end()) { goscie.erase(S); for(auto &x : xd) { visited[x] = true; } ile++; } } cout << ((ile == n) ? "YES" : "NO"); return 0; }

Compilation message (stderr)

bank.cpp: In function 'int main()':
bank.cpp:44:10: warning: unused variable 'ans' [-Wunused-variable]
   44 |     bool ans = false;
      |          ^~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...