Submission #1302233

#TimeUsernameProblemLanguageResultExecution timeMemory
1302233souvenir_vayneAliens (IOI16_aliens)C++20
Compilation error
0 ms0 KiB
#include <bits/stdc++.h> #include "aliens.h" #define pb push_back #define F0R(var) for (; (var) > 0; --(var)) #define endl '\n' template<typename... Ts> void debug_out(const Ts&... ts) { std::cerr << "DEBUG:"; if constexpr (sizeof...(Ts) > 0) { ((std::cerr << ' ' << ts), ...); } std::cerr << '\n'; } #define f first #define FINOUT cin.tie(0), cout.tie(0), ios::sync_with_stdio(0) #define s second #define debug(...) debug_out(__VA_ARGS__) #define all(x) x.begin(), x.end() using namespace std; typedef pair<long long, long long> pii; typedef vector<long long> vi; long long take_photos(int n, int m, int k, std::vector<int> r, std::vector<int> c) { vector<long long> minL(m + 1); iota(all(minL), 1); for(long long i = 0; i < n; i++) { if(r[i] < c[i]) swap(r[i], c[i]); r[i]++, c[i]++; minL[r[i]] = min(minL[r[i]], c[i]); } long long ini = 0, mid, end = 1e13, ans; while(ini <= end) { mid = (ini + end) / 2; vector<pii> dp(m + 1, {1e13, 1}); dp[0] = {0, 0}; for(long long i = 1; i <= m; i++) { if(minL[i] == i + 1) dp[i] = dp[i - 1]; for(long long j = min(i, minL[i]); j >= 1; j--) { j = min(j, minL[j]); dp[i] = min(dp[i], {dp[j - 1].f + mid + (i - j + 1) * (i - j + 1), dp[j - 1].s + 1}); } } if(dp[m].s <= k) { ans = dp[m].f - k * mid; end = mid - 1; } else ini = mid + 1; } return ans; }

Compilation message (stderr)

aliens.cpp: In function 'long long int take_photos(int, int, int, std::vector<int>, std::vector<int>)':
aliens.cpp:32:25: error: no matching function for call to 'min(__gnu_cxx::__alloc_traits<std::allocator<long long int>, long long int>::value_type&, __gnu_cxx::__alloc_traits<std::allocator<int>, int>::value_type&)'
   32 |         minL[r[i]] = min(minL[r[i]], c[i]);
      |                      ~~~^~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/13/algorithm:60,
                 from /usr/include/x86_64-linux-gnu/c++/13/bits/stdc++.h:51,
                 from aliens.cpp:1:
/usr/include/c++/13/bits/stl_algobase.h:233:5: note: candidate: 'template<class _Tp> constexpr const _Tp& std::min(const _Tp&, const _Tp&)'
  233 |     min(const _Tp& __a, const _Tp& __b)
      |     ^~~
/usr/include/c++/13/bits/stl_algobase.h:233:5: note:   template argument deduction/substitution failed:
aliens.cpp:32:25: note:   deduced conflicting types for parameter 'const _Tp' ('long long int' and '__gnu_cxx::__alloc_traits<std::allocator<int>, int>::value_type' {aka 'int'})
   32 |         minL[r[i]] = min(minL[r[i]], c[i]);
      |                      ~~~^~~~~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_algobase.h:281:5: note: candidate: 'template<class _Tp, class _Compare> constexpr const _Tp& std::min(const _Tp&, const _Tp&, _Compare)'
  281 |     min(const _Tp& __a, const _Tp& __b, _Compare __comp)
      |     ^~~
/usr/include/c++/13/bits/stl_algobase.h:281:5: note:   template argument deduction/substitution failed:
aliens.cpp:32:25: note:   deduced conflicting types for parameter 'const _Tp' ('long long int' and '__gnu_cxx::__alloc_traits<std::allocator<int>, int>::value_type' {aka 'int'})
   32 |         minL[r[i]] = min(minL[r[i]], c[i]);
      |                      ~~~^~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/13/algorithm:61:
/usr/include/c++/13/bits/stl_algo.h:5775:5: note: candidate: 'template<class _Tp> constexpr _Tp std::min(initializer_list<_Tp>)'
 5775 |     min(initializer_list<_Tp> __l)
      |     ^~~
/usr/include/c++/13/bits/stl_algo.h:5775:5: note:   template argument deduction/substitution failed:
aliens.cpp:32:25: note:   mismatched types 'std::initializer_list<_Tp>' and 'long long int'
   32 |         minL[r[i]] = min(minL[r[i]], c[i]);
      |                      ~~~^~~~~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_algo.h:5785:5: note: candidate: 'template<class _Tp, class _Compare> constexpr _Tp std::min(initializer_list<_Tp>, _Compare)'
 5785 |     min(initializer_list<_Tp> __l, _Compare __comp)
      |     ^~~
/usr/include/c++/13/bits/stl_algo.h:5785:5: note:   template argument deduction/substitution failed:
aliens.cpp:32:25: note:   mismatched types 'std::initializer_list<_Tp>' and 'long long int'
   32 |         minL[r[i]] = min(minL[r[i]], c[i]);
      |                      ~~~^~~~~~~~~~~~~~~~~~
aliens.h:1:9: warning: #pragma once in main file
    1 | #pragma once
      |         ^~~~
aliens_c.h:1:9: warning: #pragma once in main file
    1 | #pragma once
      |         ^~~~