Submission #164211

#TimeUsernameProblemLanguageResultExecution timeMemory
164211dolphingarlicKitchen (BOI19_kitchen)C++14
100 / 100
35 ms764 KiB
#include <bits/stdc++.h> #define FOR(i, x, y) for (int i = x; i < y; i++) typedef long long ll; using namespace std; int dp[90001]; int main() { ios_base::sync_with_stdio(0); cin.tie(0); int n, m, k, sm = 0; cin >> n >> m >> k; if (m < k) return cout << "Impossible", 0; FOR(i, 0, n) { int a; cin >> a; if (a < k) return cout << "Impossible", 0; sm += a; } memset(dp, -1, sizeof(dp)); dp[0] = 0; FOR(i, 1, m + 1) { int x; cin >> x; for (int j = 90000 - x; ~j; j--) if (~dp[j]) { dp[j + x] = max(dp[j + x], dp[j] + min(x, n)); } } FOR(i, sm, 90001) if (dp[i] >= n * k) return cout << i - sm, 0; cout << "Impossible"; 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...
#Verdict Execution timeMemoryGrader output
Fetching results...