Submission #1273145

#TimeUsernameProblemLanguageResultExecution timeMemory
1273145kaiboySemiexpress (JOI17_semiexpress)C++20
100 / 100
8 ms2080 KiB
#include <algorithm> #include <iostream> using namespace std; const int M = 3000; const int K = 3000; int qu[M * K]; int main() { ios_base::sync_with_stdio(false), cin.tie(NULL); int n, m, k; cin >> n >> m >> k, k -= m; long long a, b, c; cin >> a >> b >> c; long long t; cin >> t; int x = b * (n - 1) <= t, cnt = 0, l; cin >> l, l--; while (--m) { int r; cin >> r, r--; int i = l; for (int h = 0; h <= k && i < r && b * l + c * (i - l) <= t; h++) { int j = min(i + max(t - b * l - c * (i - l), 0LL) / a, r - 1LL); if (!h) x += j - i + 1; else qu[cnt++] = j - i + 1; i = j + 1; } l = r; } sort(qu, qu + cnt, greater<>()); for (k = min(k, cnt); k--; ) x += qu[k]; cout << x - 1 << '\n'; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...