Submission #1306146

#TimeUsernameProblemLanguageResultExecution timeMemory
1306146korokageRabbit Carrot (LMIO19_triusis)C++20
100 / 100
65 ms4140 KiB
#include <bits/stdc++.h>
#define ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL);
using namespace std;
using ll = long long;

ll n, m;
vector<ll> a;
vector<ll> lis;

int main()
{
    cin >> n >> m;
    a.assign(n, 0);

    for (int i = 0; i < n; i++)
    {
        cin >> a[i];
        a[i] -= (i + 1) * m;
    }

    // for (int i = 0; i < n; i++)
    // {
    //     cout << a[i] << " ";
    // }
    // cout << endl;

    lis.emplace_back(0);
    for (auto & num : a)
    {
        int pos = upper_bound(lis.begin(), lis.end(), num, greater<int>()) - lis.begin();
        if (pos == lis.size()) lis.emplace_back(num);
        else 
        {
            if (pos != 0) lis[pos] = num;
        }
    }

    // for (auto & it : lis)
    // {
    //     cout << it << " ";
    // }
    // cout << endl;

    cout << n - (lis.size() - 1);
}

Compilation message (stderr)

triusis.cpp:2:9: warning: ISO C++11 requires whitespace after the macro name
    2 | #define ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL);
      |         ^~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...