#include <bits/stdc++.h>
using namespace std;
using ll = long long;
const ll MOD = 1e9 + 7;
int main(){
ll n, m;
cin >> n >> m;
int start = -1;
vector<ll> a(n);
for(int i = 0; i < n; i++){
cin >> a[i];
a[i] -= (i+1) * m;
a[i] *= -1;
if(a[i] >= 0 && start == -1) start = i;
}
if(start == -1){
cout << n;
return 0;
}
vector<ll> dp = {a[start]};
for(int i = start+1; i < n; i++){
if(a[i] >= dp.back()){
dp.push_back(a[i]);
continue;
}
int l = lower_bound(dp.begin(), dp.end(), a[i]) - dp.begin();
dp[l] = a[i];
}
cout << n - dp.size();
}
# | 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... |