# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
473446 | Croco | Rabbit Carrot (LMIO19_triusis) | C++17 | 42 ms | 9916 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 int long long int
#define ll long long
using namespace std;
const int N = 2e5 + 5;
int find_lis(vector<int> a) //strictly increasing, for non-dec. change lower_bound to upper_bound
{
vector<int> dp;
for(auto x : a)
{
int pos = upper_bound(dp.begin(),dp.end(),x) - dp.begin();
if(pos == dp.size())
dp.push_back(x);
else
dp[pos] = x;
}
return dp.size();
}
signed main()
{
ios_base::sync_with_stdio(false);cin.tie(0);cout.tie(0);
int n,m;
cin>>n>>m;
int a[n];
for(int i=0;i<n;i++)
cin>>a[i];
vector<int> v;
for(int i=1;i<=n;i++)
{
int val = m*i - a[i-1];
if(val >= 0)
v.push_back(val);
}
cout << n - find_lis(v) << '\n';
}
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... |