제출 #1197440

#제출 시각아이디문제언어결과실행 시간메모리
1197440alterioTaxis (POI13_tak)C++20
90 / 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++) { if (cur >= goal) break; ll dist = abs(cur - d); v[i] -= dist; if (v[i] <= 0) break; cur += v[i]; ans++; } 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...