Submission #938653

#TimeUsernameProblemLanguageResultExecution timeMemory
938653vjudge1Kitchen (BOI19_kitchen)C++17
0 / 100
6 ms8284 KiB
#include <bits/stdc++.h> #define int long long using namespace std; int n, m, k, A, B; vector<int> a, b; vector<vector<bool>> dp; signed main() { cin >> n >> m >> k; a = vector<int>(n), b = vector<int>(m); for(int i = 0; i < n; i++) { cin >> a[i]; A += a[i]; } for(int i = 0; i < n; i++) { cin >> b[i]; B += b[i]; } // dp = vector<vector<bool>>(m + 1, vector<bool>(B + 1, false)); dp[0][0] = true; for(int i = 1; i <= m; i++) { for(int j = 0; j <= B; j++) { dp[i][j] = dp[i - 1][j] | dp[i - 1][j - b[i - 1]]; //cout << dp[i][j] << " "; } //cout << "\n"; } // int res = LLONG_MAX; for(int i = 0; i <= m; i++) { for(int j = A; j <= B; j++) { if(dp[i][j]) res = min(res, j - A); } } cout << res << "\n"; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...