This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
#define x first
#define y second
#define pb push_back
#define mk make_pair
#define all(a) a.begin(), a.end()
#define len(a) (int)a.size()
using namespace std;
typedef long long ll;
typedef vector <int> vi;
typedef pair <int, int> pii;
void add(ll x, vector <ll> &d){
int l = upper_bound(all(d), x) - d.begin();
if(l == len(d))
d.pb(0);
d[l] = x;
}
int main(){
ll n, m;
cin >> n >> m;
vector <ll> d(n);
for(int i = 0; i < n; i++){
cin >> d[i];
d[i] = (i + 1) * m - d[i];
}
vector <ll> dp;
for(int i = 0; i < n; i++){
ll v = d[i];
if(v >= 0)
add(v, dp);
}
cout << n - len(dp) << endl;
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... |