Submission #1248194

#TimeUsernameProblemLanguageResultExecution timeMemory
1248194tridang7272Bank (IZhO14_bank)C++20
0 / 100
2 ms840 KiB
#include <bits/stdc++.h> #define nmax (long long)(1e3+7) #define oo (long long)(1e9) #define ll long long #define ld long double #define pii pair<int,int> #define pll pair<ll,ll> #define fi first #define se second #define pb push_back #define bignum string #define mahiru "traluong" #define shiina_mahiru ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0); using namespace std; ll n,m; vector<ll> a,b; vector<ll> dp; vector<vector<ll>> S; int main() { shiina_mahiru if(fopen(mahiru".inp","r")) { freopen(mahiru".inp","r",stdin); freopen(mahiru".out","w",stdout); } ll sum=0; cin>>n>>m; a.resize(n); b.resize(m); for(int i=0;i<n;i++){ cin>>a[i];sum+=a[i]; } for(int i=0;i<m;i++) cin>>b[i]; S.assign(sum+10,{}); ll MX=(1<<m); for(int mask=0;mask<MX;mask++) { ll total=0; for(int i=0;i<m;i++) if((mask>>i)&1) total+=b[i]; S[total].pb(mask); } vector<ll> dp(MX,-1); dp[0]=0; for(int mask=0;mask<MX;mask++) { if(dp[mask]<0) continue; ll total=0; for(int i=0;i<m;i++) if((mask>>i)&1) total+=b[i]; int id=dp[mask]; if(id==n) continue; for(int emask:S[a[id]]) { if((emask&mask)>0) continue; ll nmask=emask|mask; dp[nmask]=max(dp[nmask],dp[mask]+1); } } bool ok=false; for(int mask=0;mask<MX;mask++) if(dp[mask]==n) {ok=true;break;} cout<<(ok?"YES":"NO"); return 0; } //CODE CUA DANGRANGCOM

Compilation message (stderr)

bank.cpp: In function 'int main()':
bank.cpp:24:16: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   24 |         freopen(mahiru".inp","r",stdin);
      |         ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
bank.cpp:25:16: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   25 |         freopen(mahiru".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...