제출 #735035

#제출 시각아이디문제언어결과실행 시간메모리
735035MasterTasterRabbit Carrot (LMIO19_triusis)C++14
63 / 100
39 ms3144 KiB
#include <bits/stdc++.h>

using namespace std;

#define ll long long
#define MAXN 100010

ll n, m, a[MAXN], dp[MAXN];

int main() {

    cin>>n>>m;
    for (int i=1; i<=n; i++) cin>>a[i];

    int lis=0;
    for (ll i=1; i<=n; i++)
    {
        auto it=upper_bound(dp, dp+lis, m*i-a[i]);
        if (lis==0 || ((distance(dp, it))==0)) if (m*i-a[i]<0) { /*cout<<i<<" wtf"<<endl;*/ continue; }
        if (it==dp+lis)
        {
            dp[lis]=m*i-a[i];
            lis++;
            //cout<<i<<" "<<lis<<endl;
        }
        else
        {
            int j=distance(dp, it);
            dp[j]=m*i-a[i];
        }
        //for (int i=0; i<lis; i++) cout<<dp[i]<<" ";
        //cout<<endl;
    }
    cout<<n-lis;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...