Submission #434516

#TimeUsernameProblemLanguageResultExecution timeMemory
434516MohammadAghilBank (IZhO14_bank)C++14
0 / 100
1074 ms332 KiB
#include <bits/stdc++.h> using namespace std; typedef long long ll; #define rep(i,l,r) for(int i = (l); i < r; i++) #define per(i,r,l) for(int i = (r); i >= l; i--) #define all(x) x.begin(), x.end() #define sz(x) (int)(x).size() #define pb push_back #define ff first #define ss second const ll mod = 1e9 + 7, maxn = 20, inf = 1e9 + 5; int a[maxn], c[maxn]; pair<int, int> dp[1 << maxn]; int main(){ freopen("bank.in", "r", stdin); freopen("bank.out", "w", stdout); int n, m; cin >> n >> m; rep(i,0,n) cin >> a[i]; rep(i,0,m) cin >> c[i]; dp[0] = {0, 0}; rep(b, 1, 1 << m){ rep(i,0,m){ if(b & (1 << i)){ int t = a[dp[(b & (1 << i))].ff] - dp[(b&(1 << i))].ss; pair<int, int> p = dp[b]; if(t == c[i]){ p.ff++; p.ss = 0; }else if(t > c[i]){ p.ss += c[i]; }else{ continue; } dp[b] = p; if(p.ff == n){ return cout << "YES\n", 0; } } } } cout << "NO\n"; return 0; }

Compilation message (stderr)

bank.cpp: In function 'int main()':
bank.cpp:18:12: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   18 |     freopen("bank.in", "r", stdin);
      |     ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
bank.cpp:19:12: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   19 |     freopen("bank.out", "w", stdout);
      |     ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...