#include<bits/stdc++.h>
using namespace std;
using ll = long long;
const int N = 303;
int a[N], b[N];
int main() {
cin.tie(nullptr)->sync_with_stdio(false);
int n, m, k;
cin >> n >> m >> k;
int sum = 0;
for (int i = 1;i <= n;i++) {
cin >> a[i];
sum += a[i];
}
for (int i = 0;i < m;i++) {
cin >> b[i];
}
for (int i = 1;i <= n;i++) {
if (a[i] < k) {
cout << "Impossible\n";
return 0;
}
}
int mn = 1e9;
for (int i = 0;i < (1 << m);i++) {
int s1 = 0, s2 = 0;
for (int j = 0;j < m;j++) {
if (i & (1 << j)) s1 += b[j], s2 += min(n, b[j]);
}
if (s1 >= sum && s2 >= k * n) {
mn = min(mn, s1);
}
}
if (mn == 1e9) cout << "Impossible\n";
else cout << mn - sum << '\n';
return 0;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |