제출 #797535

#제출 시각아이디문제언어결과실행 시간메모리
797535gtm7Rabbit Carrot (LMIO19_triusis)C++17
100 / 100
75 ms6928 KiB
#include <bits/stdc++.h>
using namespace std;

int main()
{
    long long n, m;
    cin >> n >> m;
    vector<long long> a(n);
    for (int i = 0; i < n; i++)
    {
        cin >> a[i];
        a[i] = a[i] - m * (i + 1);
    }
    vector<long long> l(2 * n + 2, -1000000000000000);
    l[0] = -l[0];
    for (int i = 1; i <= n; i++)
    {
        l[i] = 0;
    }
    l[n + 1] = 0;
    long long ans = n + 1, ind = -1;
    for (int i = 0; i < n; i++)
    {
        ind = upper_bound(l.begin(), l.end(), a[i], greater<long long>()) - l.begin();
        l[ind] = a[i];
        ans = max(ans, ind);
    }
    cout << 2 * n + 1 - ans << endl;
    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...