#include <bits/stdc++.h>
using namespace std;
const int N = 2e5+5;
int n, M;
int keep[N];
int main()
{
cin >> n >> M;
for( int i=1;i<=n;i++ )
{
int a; cin >> a;
keep[i] = M*i - a;
}
vector<int> vec;
for( int i=0;i<=n;i++ )
{
int idx = upper_bound( vec.begin(), vec.end(), keep[i] )-vec.begin();
if( idx == vec.size() ) vec.push_back( keep[i] );
else vec[idx] = keep[i];
}
cout << n-vec.size()+1;
return 0;
}
# | 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... |