Submission #1198845

#TimeUsernameProblemLanguageResultExecution timeMemory
1198845agussKitchen (BOI19_kitchen)C++20
0 / 100
0 ms400 KiB
#include <bits/stdc++.h> using namespace std; int main(){ int n, m, k, sum = 0; cin >> n >> m >> k; vector<int> dp, b(m); bool t = false; for(int i = 0; i < n; i++){ int aux; cin >> aux; if(aux < k) t = 1; sum += aux; } if(t) { cout << "Impossible"; return 0; } for(int &i : b){ cin >> i; } if(m < k){ cout << "Impossible"; return 0; } if(m == 1){ if(b[0] < sum){ cout << "Impossible"; return 0; } cout << b[0] - sum; return 0; } if(k == 2){ if(b[0] < n or b[1] < n){ cout << "Impossible"; return 0; } if(b[0] + b[1] < sum){ cout << "Impossible"; return 0; } cout << b[0] + b[1] - sum; return 0; } if(b[0] > b[1]) swap(b[0], b[1]); vector<int>::iterator x = lower_bound(b.begin(), b.end(), sum); if(x == b.end()){ cout << "Impossible"; return 0; } cout << *x - sum; 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...