제출 #596375

#제출 시각아이디문제언어결과실행 시간메모리
596375AlesL0Kitchen (BOI19_kitchen)C++17
0 / 100
9 ms340 KiB
#include <bits/stdc++.h> using namespace std; mt19937 rng(time(nullptr)); int main(){ int n, m, k; cin >> n >> m >> k; vector <int> a(n), b(n); int flag = m, sum = 0; for (int i = 0; i < n; i++){ cin >> a[i]; flag = min(flag, a[i]); sum += a[i]; } for (int i = 0; i < m; i++)cin >> b[i]; if (flag < k){ cout << "impossible"; return 0; } vector <int> dp(9001, -100000); dp[0] = 0; for (int i = 0; i < m; i++){ for (int j = 9000-b[i]; j >= 0; j--)dp[j+b[i]] = max(dp[j+b[i]], dp[j]+min(n, b[i])); } for (int i = 0; i+sum <= 9000; i++){ if (dp[i+sum] >= n*k){ cout << i; return 0; } } cout << "impossible"; }
#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...