Submission #619150

#TimeUsernameProblemLanguageResultExecution timeMemory
619150HanksburgerRabbit Carrot (LMIO19_triusis)C++17
14 / 100
5 ms540 KiB
#include <bits/stdc++.h>
using namespace std;
set<pair<int, int> > s;
int main()
{
    ios::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);
    int n, m, a=0, ans=1e9;
    cin >> n >> m;
    s.insert({0, 0});
    s.insert({1e9, 1e9});
    for (int i=1; i<=n; i++)
    {
        int x, y;
        cin >> x;
        a+=m;
        y=(*s.lower_bound({x-a, -1e9})).second;
        auto itr=s.lower_bound({x-a, -1e9});
        if (y-1<(*itr).second)
        {
            int fi=(*itr).first, se=(*itr).second;
            s.erase(itr);
            if (x-a==fi)
                s.insert({fi, y-1});
            else
            {
                s.insert({fi, se});
                s.insert({x-a, y-1});
            }
        }
    }
    for (auto itr=s.begin(); itr!=s.end(); itr++)
        ans=min(ans, itr->second+n);
    cout << ans;
    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...