# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1170369 | sunboi | Wall (IOI14_wall) | C++17 | Compilation error | 0 ms | 0 KiB |
#include <bits/stdc++.h>
using namespace std;
const int N = 2e6 + 1000;
vector<int> a(N);
vector<pair< int, int>> t(4 * N);
void push(int v, int vl, int vr){
if (vr != vl){
t[2 * v].first = min(max(t[2 * v].first, t[v].first), t[v].second);
t[2 * v].second = max(min(t[2 * v].second, t[v].second), t[v].first);
t[2 * v + 1].first = min(max(t[2 * v + 1].first, t[v].first), t[v].second);
t[2 * v + 1].second = max(min(t[2 * v + 1].second, t[v].second), t[v].first);
t[v] = {0, 1e9};
}
}
void update(int v, int vl, int vr, int l, int r, long long x, int tt){
if (vl > r || vr < l) return;
if (vl >= l && vr <= r){
if (tt == 1){
t[v] = {max(t[v].first, x), max(t[v].second, x)};
}else{
t[v] = {min(t[v].first, x), min(t[v].second, x)};
}
return;
}
push(v, vl ,vr);
int vm = (vl + vr) / 2;
update(2 * v, vl, vm, l, r, x, tt);
update(2 * v + 1, vm + 1, vr, l, r, x, tt);
}
int get(int v, int vl, int vr, int x){
if (vl > x || vr < x) return -1;
if (vr == x && x == vl){
return t[v].first;
}
push(v, vl ,vr);
int vm = (vl + vr) / 2;
return max(get(2 * v, vl, vm, x), get(2 * v + 1, vm + 1, vr, x));
}
void buildWall(int n, int k, int op[], int left[], int right[], int height[], int finalHeight[]){
for (int i = 0; i < k; i++){
update(1, 0, n - 1, left[i], right[i], height[i], op[i]);
}
for (int i = 0; i < n; i++){
finalHeight[i] = get(1, 0, n - 1, i);
}
}
Compilation message (stderr)
wall.cpp: In function 'void update(int, int, int, int, int, long long int, int)': wall.cpp:34:24: error: no matching function for call to 'max(int&, long long int&)' 34 | t[v] = {max(t[v].first, x), max(t[v].second, x)}; | ~~~^~~~~~~~~~~~~~~ In file included from /usr/include/c++/11/bits/specfun.h:45, from /usr/include/c++/11/cmath:1935, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:41, from wall.cpp:1: /usr/include/c++/11/bits/stl_algobase.h:254:5: note: candidate: 'template<class _Tp> constexpr const _Tp& std::max(const _Tp&, const _Tp&)' 254 | max(const _Tp& __a, const _Tp& __b) | ^~~ /usr/include/c++/11/bits/stl_algobase.h:254:5: note: template argument deduction/substitution failed: wall.cpp:34:24: note: deduced conflicting types for parameter 'const _Tp' ('int' and 'long long int') 34 | t[v] = {max(t[v].first, x), max(t[v].second, x)}; | ~~~^~~~~~~~~~~~~~~ In file included from /usr/include/c++/11/bits/specfun.h:45, from /usr/include/c++/11/cmath:1935, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:41, from wall.cpp:1: /usr/include/c++/11/bits/stl_algobase.h:300:5: note: candidate: 'template<class _Tp, class _Compare> constexpr const _Tp& std::max(const _Tp&, const _Tp&, _Compare)' 300 | max(const _Tp& __a, const _Tp& __b, _Compare __comp) | ^~~ /usr/include/c++/11/bits/stl_algobase.h:300:5: note: template argument deduction/substitution failed: wall.cpp:34:24: note: deduced conflicting types for parameter 'const _Tp' ('int' and 'long long int') 34 | t[v] = {max(t[v].first, x), max(t[v].second, x)}; | ~~~^~~~~~~~~~~~~~~ In file included from /usr/include/c++/11/algorithm:62, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from wall.cpp:1: /usr/include/c++/11/bits/stl_algo.h:3461:5: note: candidate: 'template<class _Tp> constexpr _Tp std::max(std::initializer_list<_Tp>)' 3461 | max(initializer_list<_Tp> __l) | ^~~ /usr/include/c++/11/bits/stl_algo.h:3461:5: note: template argument deduction/substitution failed: wall.cpp:34:24: note: mismatched types 'std::initializer_list<_Tp>' and 'int' 34 | t[v] = {max(t[v].first, x), max(t[v].second, x)}; | ~~~^~~~~~~~~~~~~~~ In file included from /usr/include/c++/11/algorithm:62, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from wall.cpp:1: /usr/include/c++/11/bits/stl_algo.h:3467:5: note: candidate: 'template<class _Tp, class _Compare> constexpr _Tp std::max(std::initializer_list<_Tp>, _Compare)' 3467 | max(initializer_list<_Tp> __l, _Compare __comp) | ^~~ /usr/include/c++/11/bits/stl_algo.h:3467:5: note: template argument deduction/substitution failed: wall.cpp:34:24: note: mismatched types 'std::initializer_list<_Tp>' and 'int' 34 | t[v] = {max(t[v].first, x), max(t[v].second, x)}; | ~~~^~~~~~~~~~~~~~~ wall.cpp:34:44: error: no matching function for call to 'max(int&, long long int&)' 34 | t[v] = {max(t[v].first, x), max(t[v].second, x)}; | ~~~^~~~~~~~~~~~~~~~ In file included from /usr/include/c++/11/bits/specfun.h:45, from /usr/include/c++/11/cmath:1935, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:41, from wall.cpp:1: /usr/include/c++/11/bits/stl_algobase.h:254:5: note: candidate: 'template<class _Tp> constexpr const _Tp& std::max(const _Tp&, const _Tp&)' 254 | max(const _Tp& __a, const _Tp& __b) | ^~~ /usr/include/c++/11/bits/stl_algobase.h:254:5: note: template argument deduction/substitution failed: wall.cpp:34:44: note: deduced conflicting types for parameter 'const _Tp' ('int' and 'long long int') 34 | t[v] = {max(t[v].first, x), max(t[v].second, x)}; | ~~~^~~~~~~~~~~~~~~~ In file included from /usr/include/c++/11/bits/specfun.h:45, from /usr/include/c++/11/cmath:1935, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:41, from wall.cpp:1: /usr/include/c++/11/bits/stl_algobase.h:300:5: note: candidate: 'template<class _Tp, class _Compare> constexpr const _Tp& std::max(const _Tp&, const _Tp&, _Compare)' 300 | max(const _Tp& __a, const _Tp& __b, _Compare __comp) | ^~~ /usr/include/c++/11/bits/stl_algobase.h:300:5: note: template argument deduction/substitution failed: wall.cpp:34:44: note: deduced conflicting types for parameter 'const _Tp' ('int' and 'long long int') 34 | t[v] = {max(t[v].first, x), max(t[v].second, x)}; | ~~~^~~~~~~~~~~~~~~~ In file included from /usr/include/c++/11/algorithm:62, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from wall.cpp:1: /usr/include/c++/11/bits/stl_algo.h:3461:5: note: candidate: 'template<class _Tp> constexpr _Tp std::max(std::initializer_list<_Tp>)' 3461 | max(initializer_list<_Tp> __l) | ^~~ /usr/include/c++/11/bits/stl_algo.h:3461:5: note: template argument deduction/substitution failed: wall.cpp:34:44: note: mismatched types 'std::initializer_list<_Tp>' and 'int' 34 | t[v] = {max(t[v].first, x), max(t[v].second, x)}; | ~~~^~~~~~~~~~~~~~~~ In file included from /usr/include/c++/11/algorithm:62, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from wall.cpp:1: /usr/include/c++/11/bits/stl_algo.h:3467:5: note: candidate: 'template<class _Tp, class _Compare> constexpr _Tp std::max(std::initializer_list<_Tp>, _Compare)' 3467 | max(initializer_list<_Tp> __l, _Compare __comp) | ^~~ /usr/include/c++/11/bits/stl_algo.h:3467:5: note: template argument deduction/substitution failed: wall.cpp:34:44: note: mismatched types 'std::initializer_list<_Tp>' and 'int' 34 | t[v] = {max(t[v].first, x), max(t[v].second, x)}; | ~~~^~~~~~~~~~~~~~~~ wall.cpp:34:60: error: no match for 'operator=' (operand types are '__gnu_cxx::__alloc_traits<std::allocator<std::pair<int, int> >, std::pair<int, int> >::value_type' {aka 'std::pair<int, int>'} and '<brace-enclosed initializer list>') 34 | t[v] = {max(t[v].first, x), max(t[v].second, x)}; | ^ In file included from /usr/include/c++/11/bits/stl_algobase.h:64, from /usr/include/c++/11/bits/specfun.h:45, from /usr/include/c++/11/cmath:1935, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:41, from wall.cpp:1: /usr/include/c++/11/bits/stl_pair.h:418:9: note: candidate: 'template<class _U1, class _U2> typename std::enable_if<std::__and_<std::is_assignable<_T1&, const _U1&>, std::is_assignable<_T2&, const _U2&> >::value, std::pair<_T1, _T2>&>::type std::pair<_T1, _T2>::operator=(const std::pair<_U1, _U2>&) [with _U1 = _U1; _U2 = _U2; _T1 = int; _T2 = int]' 418 | operator=(const pair<_U1, _U2>& __p) | ^~~~~~~~ /usr/include/c++/11/bits/stl_pair.h:418:9: note: template argument deduction/substitution failed: wall.cpp:34:60: note: couldn't deduce template parameter '_U1' 34 | t[v] = {max(t[v].first, x), max(t[v].second, x)}; | ^ In file included from /usr/include/c++/11/bits/stl_algobase.h:64, from /usr/include/c++/11/bits/specfun.h:45, from /usr/include/c++/11/cmath:1935, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:41, from wall.cpp:1: /usr/include/c++/11/bits/stl_pair.h:430:9: note: candidate: 'template<class _U1, class _U2> typename std::enable_if<std::__and_<std::is_assignable<_T1&, _U1&&>, std::is_assignable<_T2&, _U2&&> >::value, std::pair<_T1, _T2>&>::type std::pair<_T1, _T2>::operator=(std::pair<_U1, _U2>&&) [with _U1 = _U1; _U2 = _U2; _T1 = int; _T2 = int]' 430 | operator=(pair<_U1, _U2>&& __p) | ^~~~~~~~ /usr/include/c++/11/bits/stl_pair.h:430:9: note: template argument deduction/substitution failed: wall.cpp:34:60: note: couldn't deduce template parameter '_U1' 34 | t[v] = {max(t[v].first, x), max(t[v].second, x)}; | ^ In file included from /usr/include/c++/11/bits/stl_algobase.h:64, from /usr/include/c++/11/bits/specfun.h:45, from /usr/include/c++/11/cmath:1935, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:41, from wall.cpp:1: /usr/include/c++/11/bits/stl_pair.h:390:7: note: candidate: 'std::pair<_T1, _T2>& std::pair<_T1, _T2>::operator=(typename std::conditional<std::__and_<std::is_copy_assignable<_T1>, std::is_copy_assignable<_T2> >::value, const std::pair<_T1, _T2>&, const std::__nonesuch&>::type) [with _T1 = int; _T2 = int; typename std::conditional<std::__and_<std::is_copy_assignable<_T1>, std::is_copy_assignable<_T2> >::value, const std::pair<_T1, _T2>&, const std::__nonesuch&>::type = const std::pair<int, int>&]' 390 | operator=(typename conditional< | ^~~~~~~~ /usr/include/c++/11/bits/stl_pair.h:393:55: note: no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'std::conditional<true, const std::pair<int, int>&, const std::__nonesuch&>::type' {aka 'const std::pair<int, int>&'} 390 | operator=(typename conditional< | ~~~~~~~~~~~~~~~~~~~~~ 391 | __and_<is_copy_assignable<_T1>, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 392 | is_copy_assignable<_T2>>::value, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 393 | const pair&, const __nonesuch&>::type __p) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/11/bits/stl_pair.h:401:7: note: candidate: 'std::pair<_T1, _T2>& std::pair<_T1, _T2>::operator=(typename std::conditional<std::__and_<std::is_move_assignable<_Tp>, std::is_move_assignable<_T2> >::value, std::pair<_T1, _T2>&&, std::__nonesuch&&>::type) [with _T1 = int; _T2 = int; typename std::conditional<std::__and_<std::is_move_assignable<_Tp>, std::is_move_assignable<_T2> >::value, std::pair<_T1, _T2>&&, std::__nonesuch&&>::type = std::pair<int, int>&&]' 401 | operator=(typename conditional< | ^~~~~~~~ /usr/include/c++/11/bits/stl_pair.h:404:45: note: no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'std::conditional<true, std::pair<int, int>&&, std::__nonesuch&&>::type' {aka 'std::pair<int, int>&&'} 401 | operator=(typename conditional< | ~~~~~~~~~~~~~~~~~~~~~ 402 | __and_<is_move_assignable<_T1>, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 403 | is_move_assignable<_T2>>::value, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 404 | pair&&, __nonesuch&&>::type __p) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ wall.cpp:36:24: error: no matching function for call to 'min(int&, long long int&)' 36 | t[v] = {min(t[v].first, x), min(t[v].second, x)}; | ~~~^~~~~~~~~~~~~~~ In file included from /usr/include/c++/11/bits/specfun.h:45, from /usr/include/c++/11/cmath:1935, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:41, from wall.cpp:1: /usr/include/c++/11/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++/11/bits/stl_algobase.h:230:5: note: template argument deduction/substitution failed: wall.cpp:36:24: note: deduced conflicting types for parameter 'const _Tp' ('int' and 'long long int') 36 | t[v] = {min(t[v].first, x), min(t[v].second, x)}; | ~~~^~~~~~~~~~~~~~~ In file included from /usr/include/c++/11/bits/specfun.h:45, from /usr/include/c++/11/cmath:1935, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:41, from wall.cpp:1: /usr/include/c++/11/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++/11/bits/stl_algobase.h:278:5: note: template argument deduction/substitution failed: wall.cpp:36:24: note: deduced conflicting types for parameter 'const _Tp' ('int' and 'long long int') 36 | t[v] = {min(t[v].first, x), min(t[v].second, x)}; | ~~~^~~~~~~~~~~~~~~ In file included from /usr/include/c++/11/algorithm:62, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from wall.cpp:1: /usr/include/c++/11/bits/stl_algo.h:3449:5: note: candidate: 'template<class _Tp> constexpr _Tp std::min(std::initializer_list<_Tp>)' 3449 | min(initializer_list<_Tp> __l) | ^~~ /usr/include/c++/11/bits/stl_algo.h:3449:5: note: template argument deduction/substitution failed: wall.cpp:36:24: note: mismatched types 'std::initializer_list<_Tp>' and 'int' 36 | t[v] = {min(t[v].first, x), min(t[v].second, x)}; | ~~~^~~~~~~~~~~~~~~ In file included from /usr/include/c++/11/algorithm:62, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from wall.cpp:1: /usr/include/c++/11/bits/stl_algo.h:3455:5: note: candidate: 'template<class _Tp, class _Compare> constexpr _Tp std::min(std::initializer_list<_Tp>, _Compare)' 3455 | min(initializer_list<_Tp> __l, _Compare __comp) | ^~~ /usr/include/c++/11/bits/stl_algo.h:3455:5: note: template argument deduction/substitution failed: wall.cpp:36:24: note: mismatched types 'std::initializer_list<_Tp>' and 'int' 36 | t[v] = {min(t[v].first, x), min(t[v].second, x)}; | ~~~^~~~~~~~~~~~~~~ wall.cpp:36:44: error: no matching function for call to 'min(int&, long long int&)' 36 | t[v] = {min(t[v].first, x), min(t[v].second, x)}; | ~~~^~~~~~~~~~~~~~~~ In file included from /usr/include/c++/11/bits/specfun.h:45, from /usr/include/c++/11/cmath:1935, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:41, from wall.cpp:1: /usr/include/c++/11/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++/11/bits/stl_algobase.h:230:5: note: template argument deduction/substitution failed: wall.cpp:36:44: note: deduced conflicting types for parameter 'const _Tp' ('int' and 'long long int') 36 | t[v] = {min(t[v].first, x), min(t[v].second, x)}; | ~~~^~~~~~~~~~~~~~~~ In file included from /usr/include/c++/11/bits/specfun.h:45, from /usr/include/c++/11/cmath:1935, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:41, from wall.cpp:1: /usr/include/c++/11/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++/11/bits/stl_algobase.h:278:5: note: template argument deduction/substitution failed: wall.cpp:36:44: note: deduced conflicting types for parameter 'const _Tp' ('int' and 'long long int') 36 | t[v] = {min(t[v].first, x), min(t[v].second, x)}; | ~~~^~~~~~~~~~~~~~~~ In file included from /usr/include/c++/11/algorithm:62, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from wall.cpp:1: /usr/include/c++/11/bits/stl_algo.h:3449:5: note: candidate: 'template<class _Tp> constexpr _Tp std::min(std::initializer_list<_Tp>)' 3449 | min(initializer_list<_Tp> __l) | ^~~ /usr/include/c++/11/bits/stl_algo.h:3449:5: note: template argument deduction/substitution failed: wall.cpp:36:44: note: mismatched types 'std::initializer_list<_Tp>' and 'int' 36 | t[v] = {min(t[v].first, x), min(t[v].second, x)}; | ~~~^~~~~~~~~~~~~~~~ In file included from /usr/include/c++/11/algorithm:62, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from wall.cpp:1: /usr/include/c++/11/bits/stl_algo.h:3455:5: note: candidate: 'template<class _Tp, class _Compare> constexpr _Tp std::min(std::initializer_list<_Tp>, _Compare)' 3455 | min(initializer_list<_Tp> __l, _Compare __comp) | ^~~ /usr/include/c++/11/bits/stl_algo.h:3455:5: note: template argument deduction/substitution failed: wall.cpp:36:44: note: mismatched types 'std::initializer_list<_Tp>' and 'int' 36 | t[v] = {min(t[v].first, x), min(t[v].second, x)}; | ~~~^~~~~~~~~~~~~~~~ wall.cpp:36:60: error: no match for 'operator=' (operand types are '__gnu_cxx::__alloc_traits<std::allocator<std::pair<int, int> >, std::pair<int, int> >::value_type' {aka 'std::pair<int, int>'} and '<brace-enclosed initializer list>') 36 | t[v] = {min(t[v].first, x), min(t[v].second, x)}; | ^ In file included from /usr/include/c++/11/bits/stl_algobase.h:64, from /usr/include/c++/11/bits/specfun.h:45, from /usr/include/c++/11/cmath:1935, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:41, from wall.cpp:1: /usr/include/c++/11/bits/stl_pair.h:418:9: note: candidate: 'template<class _U1, class _U2> typename std::enable_if<std::__and_<std::is_assignable<_T1&, const _U1&>, std::is_assignable<_T2&, const _U2&> >::value, std::pair<_T1, _T2>&>::type std::pair<_T1, _T2>::operator=(const std::pair<_U1, _U2>&) [with _U1 = _U1; _U2 = _U2; _T1 = int; _T2 = int]' 418 | operator=(const pair<_U1, _U2>& __p) | ^~~~~~~~ /usr/include/c++/11/bits/stl_pair.h:418:9: note: template argument deduction/substitution failed: wall.cpp:36:60: note: couldn't deduce template parameter '_U1' 36 | t[v] = {min(t[v].first, x), min(t[v].second, x)}; | ^ In file included from /usr/include/c++/11/bits/stl_algobase.h:64, from /usr/include/c++/11/bits/specfun.h:45, from /usr/include/c++/11/cmath:1935, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:41, from wall.cpp:1: /usr/include/c++/11/bits/stl_pair.h:430:9: note: candidate: 'template<class _U1, class _U2> typename std::enable_if<std::__and_<std::is_assignable<_T1&, _U1&&>, std::is_assignable<_T2&, _U2&&> >::value, std::pair<_T1, _T2>&>::type std::pair<_T1, _T2>::operator=(std::pair<_U1, _U2>&&) [with _U1 = _U1; _U2 = _U2; _T1 = int; _T2 = int]' 430 | operator=(pair<_U1, _U2>&& __p) | ^~~~~~~~ /usr/include/c++/11/bits/stl_pair.h:430:9: note: template argument deduction/substitution failed: wall.cpp:36:60: note: couldn't deduce template parameter '_U1' 36 | t[v] = {min(t[v].first, x), min(t[v].second, x)}; | ^ In file included from /usr/include/c++/11/bits/stl_algobase.h:64, from /usr/include/c++/11/bits/specfun.h:45, from /usr/include/c++/11/cmath:1935, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:41, from wall.cpp:1: /usr/include/c++/11/bits/stl_pair.h:390:7: note: candidate: 'std::pair<_T1, _T2>& std::pair<_T1, _T2>::operator=(typename std::conditional<std::__and_<std::is_copy_assignable<_T1>, std::is_copy_assignable<_T2> >::value, const std::pair<_T1, _T2>&, const std::__nonesuch&>::type) [with _T1 = int; _T2 = int; typename std::conditional<std::__and_<std::is_copy_assignable<_T1>, std::is_copy_assignable<_T2> >::value, const std::pair<_T1, _T2>&, const std::__nonesuch&>::type = const std::pair<int, int>&]' 390 | operator=(typename conditional< | ^~~~~~~~ /usr/include/c++/11/bits/stl_pair.h:393:55: note: no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'std::conditional<true, const std::pair<int, int>&, const std::__nonesuch&>::type' {aka 'const std::pair<int, int>&'} 390 | operator=(typename conditional< | ~~~~~~~~~~~~~~~~~~~~~ 391 | __and_<is_copy_assignable<_T1>, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 392 | is_copy_assignable<_T2>>::value, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 393 | const pair&, const __nonesuch&>::type __p) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/11/bits/stl_pair.h:401:7: note: candidate: 'std::pair<_T1, _T2>& std::pair<_T1, _T2>::operator=(typename std::conditional<std::__and_<std::is_move_assignable<_Tp>, std::is_move_assignable<_T2> >::value, std::pair<_T1, _T2>&&, std::__nonesuch&&>::type) [with _T1 = int; _T2 = int; typename std::conditional<std::__and_<std::is_move_assignable<_Tp>, std::is_move_assignable<_T2> >::value, std::pair<_T1, _T2>&&, std::__nonesuch&&>::type = std::pair<int, int>&&]' 401 | operator=(typename conditional< | ^~~~~~~~ /usr/include/c++/11/bits/stl_pair.h:404:45: note: no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'std::conditional<true, std::pair<int, int>&&, std::__nonesuch&&>::type' {aka 'std::pair<int, int>&&'} 401 | operator=(typename conditional< | ~~~~~~~~~~~~~~~~~~~~~ 402 | __and_<is_move_assignable<_T1>, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 403 | is_move_assignable<_T2>>::value, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 404 | pair&&, __nonesuch&&>::type __p) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~