Submission #1164809

#TimeUsernameProblemLanguageResultExecution timeMemory
1164809Ghulam_JunaidRabbit Carrot (LMIO19_triusis)C++20
100 / 100
56 ms1864 KiB
#include <bits/stdc++.h>
using namespace std;

typedef long long ll;

int main(){
    ll n, m;
    cin >> n >> m;

    deque<ll> dq;
    dq.push_front(0);
    ll ans = 0;
    for (ll i = 1; i <= n; i ++){
        ll x;
        cin >> x;
        
        if (dq.front() + i * m < x){
            ans++;
            int lb = lower_bound(dq.begin(), dq.end(), x - i * m) - dq.begin();
            if (lb != dq.size() and lb) dq[lb - 1] = max(dq[lb - 1], x - i * m);  
        }
        else{
            dq.push_front(x - i * m);
        }
    }
    cout << ans << endl;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...