Submission #885293

#TimeUsernameProblemLanguageResultExecution timeMemory
885293asli_bgBank (IZhO14_bank)C++11
0 / 100
7 ms348 KiB
#include<bits/stdc++.h> using namespace std; #include <ext/pb_ds/assoc_container.hpp> #define FOR(i,a) for(int i=0;i<(a);i++) #define FORE(i,a,b) for(int i=(a);i<(b);i++) typedef long long ll; #define pb push_back #define se second #define fi first #define all(x) x.begin(),x.end() typedef pair<int,int> pii; typedef vector<int> vi; typedef vector<pii> vii; typedef vector<bool> vb; typedef vector<ll> vll; #define mid (l+r)/2 #define alt cout<<endl const int MAXN=25; const int INF=1e9; int32_t main(){ ios_base::sync_with_stdio(0); cin.tie(0); //ifstream cin ("movie.in"); //ofstream cout ("movie.out"); int n,m; cin>>n>>m; vi dp (1<<m); vi people (n); vi money(m); FOR(i,n){ cin>>people[i]; } FOR(i,m){ cin>>money[i]; dp[1<<i]=money[i]; } sort(all(people)); int bas=0; vb used(n,false); FOR(i,n){ FORE(s,bas,(1<<m)){ FOR(j,m){ if(s & (1<<j)){ dp[s]+=dp[j]; if(dp[s]==people[i]){ used[i]=true; bas=s; break; } } } } } bool flag=true; for(auto el:used){ if(!el){ flag=false; break; } } if(flag) cout<<"YES"; else cout<<"NO"; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...