Submission #90082

#TimeUsernameProblemLanguageResultExecution timeMemory
90082Rashidov_AnisBank (IZhO14_bank)C++14
19 / 100
5 ms540 KiB
#include <bits/stdc++.h> using namespace std; int a[23],b[23],n,m; void dfs(int x,int sum,int state,int k,int num) { int i; if(x>n) { cout << "YES"; exit(0); } if(sum==0) { dfs(x+1,a[x+1],state,0,num); return; } for(i=k;i<m;i++) { if(m-num-1<n-x) break; if((state>>i)&1 || sum<b[i]) continue; dfs(x,sum-b[i],state|(1<<i),i+1,num+1); } } int main() { int i; cin >> n >> m; for(i=1;i<=n;i++) cin >> a[i]; for(i=1;i<=m;i++) cin >> b[i]; dfs(1,a[1],0,1,0); cout << "NO"; 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...