This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
// Source: https://usaco.guide/general/io
#include <bits/stdc++.h>
using namespace std;
#define LL long long
LL N, M;
LL A[200005];
LL B[200005];
LL dp[200005];
int main() {
cin >> N >> M;
for (int i = 1; i <= N; i++) {
cin >> A[i];
B[i] = M*i-A[i];
}
int E = 1;
for (int i = 1; i <= N; i++) {
if (B[i] < 0) continue;
int ind = upper_bound(dp+1,dp+E,B[i])-dp;
if (ind == E) {
dp[ind] = B[i];
E++;
continue;
}
dp[ind] = B[i];
}
cout << N-(E-1) << endl;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |