Submission #1083925

# Submission time Handle Problem Language Result Execution time Memory
1083925 2024-09-04T14:18:07 Z nqknht Rabbit Carrot (LMIO19_triusis) C++14
Compilation error
0 ms 0 KB
#include <bits/stdc++.h>

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

const ll I = 2e5 + 9;

using namespace std;

int n, M, a[I];
vector<pair<int, int>> box[I];
bool mark[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++)
    {
        for(int j = i - 1; j >= 0; j --)
        mark[j] = false;
        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 (!mark[z.fi])
                {
                    box[i].push_back({z.fi, a[i]});
                    mark[z.fi] = 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

triusis.cpp: In function 'int main()':
triusis.cpp:43:22: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   43 |     for(int i = 0; i < box[n].size(); i ++)
      |                    ~~^~~~~~~~~~~~~~~
triusis.cpp:44:34: error: no matching function for call to 'min(long long int&, int&)'
   44 |         rs = min(rs, box[n][i].fi);
      |                                  ^
In file included from /usr/include/c++/10/bits/char_traits.h:39,
                 from /usr/include/c++/10/ios:40,
                 from /usr/include/c++/10/istream:38,
                 from /usr/include/c++/10/sstream:38,
                 from /usr/include/c++/10/complex:45,
                 from /usr/include/c++/10/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:54,
                 from triusis.cpp:1:
/usr/include/c++/10/bits/stl_algobase.h:230:5: note: candidate: 'template<class _Tp> constexpr const _Tp& std::min(const _Tp&, const _Tp&)'
  230 |     min(const _Tp& __a, const _Tp& __b)
      |     ^~~
/usr/include/c++/10/bits/stl_algobase.h:230:5: note:   template argument deduction/substitution failed:
triusis.cpp:44:34: note:   deduced conflicting types for parameter 'const _Tp' ('long long int' and 'int')
   44 |         rs = min(rs, box[n][i].fi);
      |                                  ^
In file included from /usr/include/c++/10/bits/char_traits.h:39,
                 from /usr/include/c++/10/ios:40,
                 from /usr/include/c++/10/istream:38,
                 from /usr/include/c++/10/sstream:38,
                 from /usr/include/c++/10/complex:45,
                 from /usr/include/c++/10/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:54,
                 from triusis.cpp:1:
/usr/include/c++/10/bits/stl_algobase.h:278:5: note: candidate: 'template<class _Tp, class _Compare> constexpr const _Tp& std::min(const _Tp&, const _Tp&, _Compare)'
  278 |     min(const _Tp& __a, const _Tp& __b, _Compare __comp)
      |     ^~~
/usr/include/c++/10/bits/stl_algobase.h:278:5: note:   template argument deduction/substitution failed:
triusis.cpp:44:34: note:   deduced conflicting types for parameter 'const _Tp' ('long long int' and 'int')
   44 |         rs = min(rs, box[n][i].fi);
      |                                  ^
In file included from /usr/include/c++/10/algorithm:62,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:65,
                 from triusis.cpp:1:
/usr/include/c++/10/bits/stl_algo.h:3468:5: note: candidate: 'template<class _Tp> constexpr _Tp std::min(std::initializer_list<_Tp>)'
 3468 |     min(initializer_list<_Tp> __l)
      |     ^~~
/usr/include/c++/10/bits/stl_algo.h:3468:5: note:   template argument deduction/substitution failed:
triusis.cpp:44:34: note:   mismatched types 'std::initializer_list<_Tp>' and 'long long int'
   44 |         rs = min(rs, box[n][i].fi);
      |                                  ^
In file included from /usr/include/c++/10/algorithm:62,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:65,
                 from triusis.cpp:1:
/usr/include/c++/10/bits/stl_algo.h:3474:5: note: candidate: 'template<class _Tp, class _Compare> constexpr _Tp std::min(std::initializer_list<_Tp>, _Compare)'
 3474 |     min(initializer_list<_Tp> __l, _Compare __comp)
      |     ^~~
/usr/include/c++/10/bits/stl_algo.h:3474:5: note:   template argument deduction/substitution failed:
triusis.cpp:44:34: note:   mismatched types 'std::initializer_list<_Tp>' and 'long long int'
   44 |         rs = min(rs, box[n][i].fi);
      |                                  ^