Submission #1083917

#TimeUsernameProblemLanguageResultExecution timeMemory
1083917nqknhtRabbit Carrot (LMIO19_triusis)C++14
14 / 100
197 ms216660 KiB
#include <bits/stdc++.h>

#define ll long long
#define fi first
#define se second

const ll I = 2e5 + 9;

using namespace std;

ll n, M, a[I];
vector<pair<ll, ll>> box[I];

int main()
{
    cin.tie(0)->sync_with_stdio(0);
    cin >> n >> M;
    for (int i = 1; i <= n; i++)
        cin >> a[i];
    box[0].push_back({0, 0});
    for (int i = 1; i <= n; i++)
    {
        int sw = 0;
        for (auto z : box[i - 1]) // first = cnt, second = ending
        {
            if (a[i] - z.se > M)
                box[i].push_back({z.fi + 1, z.se + M});
            else if (a[i] - z.se <= M)
            {
                if (sw == 0)
                {
                    box[i].push_back({z.fi, a[i]});
                    sw = 1;
                }
                if(a[i] - z.se != M)
                box[i].push_back({z.fi + 1, z.se + M});
            }
        }
    }
    ll rs = 10000000;
    for(int i = 0; i < box[n].size(); i ++)
        rs = min(rs, box[n][i].fi);
    cout << rs;
    return 0;
}

Compilation message (stderr)

triusis.cpp: In function 'int main()':
triusis.cpp:41:22: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<long long int, long long int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   41 |     for(int i = 0; i < box[n].size(); i ++)
      |                    ~~^~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...