#include<bits/stdc++.h>
using namespace std;
#define int long long
void fun () {
int n, k, m;
cin >> n >> m >> k;
vector<int> a(n + 1), b(m + 1);
for (int i = 1; i <= n; i++) cin >> a[i];
for (int i = 1; i <= m; i++) cin >> b[i];
if (k > m) {
cout << "Impossible\n";
return;
}
int s = 0, ans = 1e18;
for (int i = 1; i <= n; i++) s += a[i];
if (k == 1) {
if (s <= b[1] && b[1] >= n) ans = min(ans, b[1] - s);
if (m >= 2 && s <= b[2] && b[2] >= n) ans = min(ans, b[2] - s);
if (ans == 1e18) {
cout << "Impossible\n";
return;
}
cout << (ans) << endl;
return;
}
if (b[1] + b[2] >= s) {
if (b[1] >= n && b[2] >= n) {
cout << b[1] + b[2] - s << endl;
}
else
cout << "Impossible\n";
}
else {
cout << "Impossible\n";
}
}
signed main () {
ios_base::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
int tt = 1;
//cin >> tt;
while (tt--) fun();
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... |