Submission #1311577

#TimeUsernameProblemLanguageResultExecution timeMemory
1311577hasan은행 (IZhO14_bank)C++20
46 / 100
2 ms836 KiB
#include <bits/stdc++.h> using namespace std; #define endl '\n' #define int int_fast32_t #define ul uint_fast32_t #define ll int_fast64_t #define dll long double #define ull uint_fast64_t #define spektar this_thread::sleep_for(chrono::milliseconds(50)) void solve(){ int n,m; cin >> n >> m; vector<pair<set<int>,int>> dp(1001); vector<int> k(n); for(auto& i:k) cin >> i; vector<int> k1(m); for(auto& i:k1) cin >> i; sort(k1.begin(),k1.end()); dp[0].second=1; for(int i=1; i<=1000; i++){ for(int j=0; j<m; j++){ if(i<k1[j]) break; if(dp[i-k1[j]].first.find(j)!=dp[i-k1[j]].first.end()) continue; dp[i].second=dp[i-k1[j]].second; if(dp[i].second){ dp[i].first=dp[i-k1[j]].first; dp[i].first.insert(j); break; } } } for(int i=0; i<n; i++){ if(!dp[k[i]].second){ cout << "NO" << endl; return; } } cout << "YES" << endl; } signed main(){ //freopen("input.txt","r",stdin); //freopen("output.txt","w",stdout); ios_base::sync_with_stdio(false); cin.tie(nullptr); cout.tie(nullptr); int t=1; //cin >> t; while(t--){ solve(); } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...