Submission #1168807

#TimeUsernameProblemLanguageResultExecution timeMemory
1168807askewwRabbit Carrot (LMIO19_triusis)C++20
100 / 100
50 ms2240 KiB
#include <bits/stdc++.h> using namespace std; template<typename T> using V = vector<T>; int n, m; V<int> a, lis; int main() { cin >> n >> m; a = V<int>(n + 1); for (int i = 1; i <= n; i++) { cin >> a[i]; a[i] -= i * m; } lis = {0}; for (int i = 1; i <= n; i++) { // cout << a[i] << ' '; if (a[i] > 0) continue; auto lb = upper_bound(lis.begin(), lis.end(), a[i], greater<int>()); if (lb == lis.end()) { lis.push_back(a[i]); } else { lis[lb - lis.begin()] = a[i]; } } cout << (n - (lis.size() - 1)) << endl; // for (auto& it : lis) { // cout << it << " "; // } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...