Submission #1182452

#TimeUsernameProblemLanguageResultExecution timeMemory
1182452chikien2009Semiexpress (JOI17_semiexpress)C++20
100 / 100
10 ms2496 KiB
#include <bits/stdc++.h> using namespace std; void setup() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); } int n, m, k, a, b, c; long long t, s[3001], d, e, f, res = 0; vector<int> v; int main() { setup(); cin >> n >> m >> k >> a >> b >> c >> t; k -= m; for (int i = 0; i < m; ++i) { cin >> s[i]; } s[m] = n + 1; for (int i = 0; i < m; ++i) { d = s[i]; e = (s[i] - 1) * b; for (int j = 0; j <= k && d < s[i + 1]; ++j) { if (e > t) { break; } f = min((t - e) / a, s[i + 1] - d - 1); if (j == 0) { res += f + (i != 0); } else { v.push_back(f + 1); } d += f + 1; e += (f + 1) * c; } } sort(v.begin(), v.end(), greater<int>()); for (int i = 0; i < min(k, (int)v.size()); ++i) { res += v[i]; } cout << res; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...