# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
734447 | farica | Rabbit Carrot (LMIO19_triusis) | C++14 | 1 ms | 296 KiB |
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 div /
#define ll long long
#define fore(i, l, r) for(int i=int(l); i<int(r); i++)
#define sz(a) int((a).size())
#define mod 1000000007
using namespace std;
int main() {
int n,m,cnt=0;
cin >> n >> m;
int h[n];
vector<int>v;
for(int i=0; i<n; ++i) {
cin >> h[i];
}
for(int i=1; i<=n; ++i) {
if((i*m)>=h[i-1]) v.push_back(i*m-h[i-1]);
}
vector<int>dp;
for(int i=0; i<v.size(); ++i) {
int pos=upper_bound(dp.begin(), dp.end(), v[i])-dp.begin();
if(i==v.size()-1) {
if(pos==(int)dp.size()) cout << n-(int)dp.size()+cnt-1 << endl;
else cout << n-pos-1+cnt << endl;
break;
}
if(pos==(int)dp.size()) dp.push_back(v[i]);
else dp[pos]=v[i];
}
if(!v.size()) {
cout << n << endl;
}
return 0;
}
Compilation message (stderr)
# | 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... |