Submission #663148

#TimeUsernameProblemLanguageResultExecution timeMemory
663148finn__Rabbit Carrot (LMIO19_triusis)C++17
100 / 100
88 ms8380 KiB
#include <bits/stdc++.h> using namespace std; int main() { size_t n; uint64_t m; cin >> n >> m; vector<uint64_t> a(n + 2); for (size_t i = 1; i <= n; i++) cin >> a[i]; a[0] = a[n + 1] = 0; vector<uint64_t> b; for (size_t i = 0; i < n + 2; i++) { if (a[i] <= m * i) b.push_back(m * i - a[i]); } vector<uint64_t> dp; for (uint64_t const &x : b) { auto it = upper_bound(dp.begin(), dp.end(), x); if (it == dp.end()) dp.push_back(x); else *it = x; } cout << n + 2 - dp.size() << '\n'; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...