#include <bits/stdc++.h>
using namespace std;
int main(){
int n, m, k, sum = 0;
cin >> n >> m >> k;
map<int, int> dp;
vector<int> a(n), b(n);
for(int &i : a){
cin >> i;
sum += i;
}
for(int &i : b){
cin >> i;
dp[i] = 1;
}
for(int &i : b){
vector<int> aux;
for(map<int, int>::iterator j = dp.upper_bound(i); j != dp.end(); j++){
int x = j -> first;
aux.push_back(x + i);
}
for(const int &j : aux){
dp[j] = 1;
}
}
map<int, int>::iterator c = dp.lower_bound(sum);
if(c == dp.end()){
cout << "Impossible";
return 0;
}
int x = c -> first;
cout << x - sum;
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... |