Submission #1197438

#TimeUsernameProblemLanguageResultExecution timeMemory
1197438alterioTaxis (POI13_tak)C++20
70 / 100
81 ms4168 KiB
#include <bits/stdc++.h> using namespace std; #define endl '\n' #define ll long long #define all(x) (x).begin(), (x).end() int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); ll m, d, n; cin >> m >> d >> n; vector<ll> v(n); for (int i = 0; i < n; i++) cin >> v[i]; sort(all(v)); int pos = lower_bound(all(v), m - d) - v.begin(); if (pos == n) { cout << 0; return 0; } swap(v[pos], v.back()); ll last = v.back(); ll goal = d - (last - m + d) / 2; v.pop_back(); sort(all(v)); reverse(all(v)); n--; ll cur = 0, ans = 0; for (int i = 0; i < n; i++) { ll dist = abs(cur - d); v[i] -= dist; cur += v[i]; ans++; if (cur >= goal) break; } if (cur + last < m) cout << 0; else cout << ans + (cur < m); }
#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...
#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...