# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1141525 | mendeke | Curtains (NOI23_curtains) | C++20 | Compilation error | 0 ms | 0 KiB |
#pragma GCC optimize("O3,unroll-loops")
#pragma GCC target("avx2,bmi,bmi2,lzcnt,popcnt")
#include<bits/stdc++.h>
#define ll long long
#define F first
#define S second
#define pb push_back
#define pf push_front
#define ppb pop_back
#define ppf pop_front
#define all(x) x.begin(), x.end()
const int mod = 1e9 + 7;
const int N = 500001;
using namespace std;
ll n, m, k = 300, t[N * 4], md[N * 4], q, a, b, c, l, r, L, R, ans[N];
vector <pair <pair <ll, ll>, ll>> v;
vector <ll> gl[N], gr[N];
bool cmp (pair <pair <ll, ll>, ll> a, pair <pair <ll, ll>, ll> b){
if (a.F.F / k == b.F.F / k){
return a.F.S < b.F.S;
}
return a.F.F < b.F.F;
}
void push (ll tl, ll tr, ll v){
t[v] += md[v];
if (tl != tr){
md[v + v] += md[v];
md[v + v + 1] += md[v];
}
md[v] = 0;
}
void upd (ll l, ll r, ll val, ll tl = 1, ll tr = n, ll v = 1){
push (tl, tr, v);
if (tr < l || tl > r){
return;
}
if (l <= tl && tr <= r){
md[v] += val;
push (tl, tr, v);
return;
}
ll tm = (tl + tr) / 2;
upd (l, r, val, tl, tm, v + v);
upd (l, r, val, tm + 1, tr, v + v + 1);
t[v] = min (t[v + v], t[v + v + 1]);
}
signed main (){
ios_base::sync_with_stdio(0);
cin.tie(0); cout.tie(0);
cin >> n >> m >> q;
for (int i = 1; i <= m; i++){
cin >> l >> r;
gl[l].pb (r);
gr[r].pb (l);
}
for (int i = 1; i <= q; i++){
cin >> l >> r;
v.pb ({{l, r}, i});
}
sort (all (v), cmp);
L = 1, R = 0;
for (auto i: v){
while (L > i.F.F){
L--;
for (auto y: gl[L]){
if (y <= i.F.S)upd (L, y, 1);
}
}
while (L < i.F.F){
for (auto y: gl[L]){
if (y <= R){
upd (L, y);
}
}
}
if (get (i.F.F, i.F.S) > 0){
ans[i.S] = 1;
}
}
for (int i = 1; i <= q; i++){
if (ans[i]){
cout << "YES\n";
}
else{
cout << "NO\n";
}
}
}
Compilation message (stderr)
curtains.cpp: In function 'int main()': curtains.cpp:79:45: error: too few arguments to function 'void upd(long long int, long long int, long long int, long long int, long long int, long long int)' 79 | upd (L, y); | ~~~~^~~~~~ curtains.cpp:38:6: note: declared here 38 | void upd (ll l, ll r, ll val, ll tl = 1, ll tr = n, ll v = 1){ | ^~~ curtains.cpp:83:25: error: no matching function for call to 'get(long long int&, long long int&)' 83 | if (get (i.F.F, i.F.S) > 0){ | ~~~~^~~~~~~~~~~~~~ In file included from /usr/include/c++/11/algorithm:60, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from curtains.cpp:3: /usr/include/c++/11/utility:223:5: note: candidate: 'template<long unsigned int _Int, class _Tp1, class _Tp2> constexpr typename std::tuple_element<_Int, std::pair<_OIter1, _OIter2> >::type& std::get(std::pair<_OIter1, _OIter2>&)' 223 | get(pair<_Tp1, _Tp2>& __in) noexcept | ^~~ /usr/include/c++/11/utility:223:5: note: template argument deduction/substitution failed: curtains.cpp:83:25: note: mismatched types 'std::pair<_OIter1, _OIter2>' and 'long long int' 83 | if (get (i.F.F, i.F.S) > 0){ | ~~~~^~~~~~~~~~~~~~ In file included from /usr/include/c++/11/algorithm:60, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from curtains.cpp:3: /usr/include/c++/11/utility:228:5: note: candidate: 'template<long unsigned int _Int, class _Tp1, class _Tp2> constexpr typename std::tuple_element<_Int, std::pair<_OIter1, _OIter2> >::type&& std::get(std::pair<_OIter1, _OIter2>&&)' 228 | get(pair<_Tp1, _Tp2>&& __in) noexcept | ^~~ /usr/include/c++/11/utility:228:5: note: template argument deduction/substitution failed: curtains.cpp:83:25: note: mismatched types 'std::pair<_OIter1, _OIter2>' and 'long long int' 83 | if (get (i.F.F, i.F.S) > 0){ | ~~~~^~~~~~~~~~~~~~ In file included from /usr/include/c++/11/algorithm:60, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from curtains.cpp:3: /usr/include/c++/11/utility:233:5: note: candidate: 'template<long unsigned int _Int, class _Tp1, class _Tp2> constexpr const typename std::tuple_element<_Int, std::pair<_OIter1, _OIter2> >::type& std::get(const std::pair<_OIter1, _OIter2>&)' 233 | get(const pair<_Tp1, _Tp2>& __in) noexcept | ^~~ /usr/include/c++/11/utility:233:5: note: template argument deduction/substitution failed: curtains.cpp:83:25: note: mismatched types 'const std::pair<_OIter1, _OIter2>' and 'long long int' 83 | if (get (i.F.F, i.F.S) > 0){ | ~~~~^~~~~~~~~~~~~~ In file included from /usr/include/c++/11/algorithm:60, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from curtains.cpp:3: /usr/include/c++/11/utility:238:5: note: candidate: 'template<long unsigned int _Int, class _Tp1, class _Tp2> constexpr const typename std::tuple_element<_Int, std::pair<_OIter1, _OIter2> >::type&& std::get(const std::pair<_OIter1, _OIter2>&&)' 238 | get(const pair<_Tp1, _Tp2>&& __in) noexcept | ^~~ /usr/include/c++/11/utility:238:5: note: template argument deduction/substitution failed: curtains.cpp:83:25: note: mismatched types 'const std::pair<_OIter1, _OIter2>' and 'long long int' 83 | if (get (i.F.F, i.F.S) > 0){ | ~~~~^~~~~~~~~~~~~~ In file included from /usr/include/c++/11/algorithm:60, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from curtains.cpp:3: /usr/include/c++/11/utility:247:5: note: candidate: 'template<class _Tp, class _Up> constexpr _Tp& std::get(std::pair<_T1, _T2>&)' 247 | get(pair<_Tp, _Up>& __p) noexcept | ^~~ /usr/include/c++/11/utility:247:5: note: template argument deduction/substitution failed: curtains.cpp:83:25: note: mismatched types 'std::pair<_T1, _T2>' and 'long long int' 83 | if (get (i.F.F, i.F.S) > 0){ | ~~~~^~~~~~~~~~~~~~ In file included from /usr/include/c++/11/algorithm:60, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from curtains.cpp:3: /usr/include/c++/11/utility:252:5: note: candidate: 'template<class _Tp, class _Up> constexpr const _Tp& std::get(const std::pair<_T1, _T2>&)' 252 | get(const pair<_Tp, _Up>& __p) noexcept | ^~~ /usr/include/c++/11/utility:252:5: note: template argument deduction/substitution failed: curtains.cpp:83:25: note: mismatched types 'const std::pair<_T1, _T2>' and 'long long int' 83 | if (get (i.F.F, i.F.S) > 0){ | ~~~~^~~~~~~~~~~~~~ In file included from /usr/include/c++/11/algorithm:60, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from curtains.cpp:3: /usr/include/c++/11/utility:257:5: note: candidate: 'template<class _Tp, class _Up> constexpr _Tp&& std::get(std::pair<_T1, _T2>&&)' 257 | get(pair<_Tp, _Up>&& __p) noexcept | ^~~ /usr/include/c++/11/utility:257:5: note: template argument deduction/substitution failed: curtains.cpp:83:25: note: mismatched types 'std::pair<_T1, _T2>' and 'long long int' 83 | if (get (i.F.F, i.F.S) > 0){ | ~~~~^~~~~~~~~~~~~~ In file included from /usr/include/c++/11/algorithm:60, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from curtains.cpp:3: /usr/include/c++/11/utility:262:5: note: candidate: 'template<class _Tp, class _Up> constexpr const _Tp&& std::get(const std::pair<_T1, _T2>&&)' 262 | get(const pair<_Tp, _Up>&& __p) noexcept | ^~~ /usr/include/c++/11/utility:262:5: note: template argument deduction/substitution failed: curtains.cpp:83:25: note: mismatched types 'const std::pair<_T1, _T2>' and 'long long int' 83 | if (get (i.F.F, i.F.S) > 0){ | ~~~~^~~~~~~~~~~~~~ In file included from /usr/include/c++/11/algorithm:60, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from curtains.cpp:3: /usr/include/c++/11/utility:267:5: note: candidate: 'template<class _Tp, class _Up> constexpr _Tp& std::get(std::pair<_Up, _Tp>&)' 267 | get(pair<_Up, _Tp>& __p) noexcept | ^~~ /usr/include/c++/11/utility:267:5: note: template argument deduction/substitution failed: curtains.cpp:83:25: note: mismatched types 'std::pair<_Up, _Tp>' and 'long long int' 83 | if (get (i.F.F, i.F.S) > 0){ | ~~~~^~~~~~~~~~~~~~ In file included from /usr/include/c++/11/algorithm:60, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from curtains.cpp:3: /usr/include/c++/11/utility:272:5: note: candidate: 'template<class _Tp, class _Up> constexpr const _Tp& std::get(const std::pair<_Up, _Tp>&)' 272 | get(const pair<_Up, _Tp>& __p) noexcept | ^~~ /usr/include/c++/11/utility:272:5: note: template argument deduction/substitution failed: curtains.cpp:83:25: note: mismatched types 'const std::pair<_Up, _Tp>' and 'long long int' 83 | if (get (i.F.F, i.F.S) > 0){ | ~~~~^~~~~~~~~~~~~~ In file included from /usr/include/c++/11/algorithm:60, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from curtains.cpp:3: /usr/include/c++/11/utility:277:5: note: candidate: 'template<class _Tp, class _Up> constexpr _Tp&& std::get(std::pair<_Up, _Tp>&&)' 277 | get(pair<_Up, _Tp>&& __p) noexcept | ^~~ /usr/include/c++/11/utility:277:5: note: template argument deduction/substitution failed: curtains.cpp:83:25: note: mismatched types 'std::pair<_Up, _Tp>' and 'long long int' 83 | if (get (i.F.F, i.F.S) > 0){ | ~~~~^~~~~~~~~~~~~~ In file included from /usr/include/c++/11/algorithm:60, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from curtains.cpp:3: /usr/include/c++/11/utility:282:5: note: candidate: 'template<class _Tp, class _Up> constexpr const _Tp&& std::get(const std::pair<_Up, _Tp>&&)' 282 | get(const pair<_Up, _Tp>&& __p) noexcept | ^~~ /usr/include/c++/11/utility:282:5: note: template argument deduction/substitution failed: curtains.cpp:83:25: note: mismatched types 'const std::pair<_Up, _Tp>' and 'long long int' 83 | if (get (i.F.F, i.F.S) > 0){ | ~~~~^~~~~~~~~~~~~~ In file included from /usr/include/c++/11/bits/ranges_algo.h:36, from /usr/include/c++/11/algorithm:64, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from curtains.cpp:3: /usr/include/c++/11/bits/ranges_util.h:381:5: note: candidate: 'template<long unsigned int _Num, class _It, class _Sent, std::ranges::subrange_kind _Kind> requires _Num < 2 constexpr auto std::ranges::get(std::ranges::subrange<_It, _Sent, _Kind>&&)' 381 | get(subrange<_It, _Sent, _Kind>&& __r) | ^~~ /usr/include/c++/11/bits/ranges_util.h:381:5: note: template argument deduction/substitution failed: curtains.cpp:83:25: note: mismatched types 'std::ranges::subrange<_It, _Sent, _Kind>' and 'long long int' 83 | if (get (i.F.F, i.F.S) > 0){ | ~~~~^~~~~~~~~~~~~~ In file included from /usr/include/c++/11/bits/ranges_algo.h:36, from /usr/include/c++/11/algorithm:64, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from curtains.cpp:3: /usr/include/c++/11/bits/ranges_util.h:370:5: note: candidate: 'template<long unsigned int _Num, class _It, class _Sent, std::ranges::subrange_kind _Kind> requires _Num < 2 constexpr auto std::ranges::get(const std::ranges::subrange<_It, _Sent, _Kind>&)' 370 | get(const subrange<_It, _Sent, _Kind>& __r) | ^~~ /usr/include/c++/11/bits/ranges_util.h:370:5: note: template argument deduction/substitution failed: curtains.cpp:83:25: note: mismatched types 'const std::ranges::subrange<_It, _Sent, _Kind>' and 'long long int' 83 | if (get (i.F.F, i.F.S) > 0){ | ~~~~^~~~~~~~~~~~~~ In file included from /usr/include/c++/11/tuple:39, from /usr/include/c++/11/functional:54, from /usr/include/c++/11/pstl/glue_algorithm_defs.h:13, from /usr/include/c++/11/algorithm:74, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from curtains.cpp:3: /usr/include/c++/11/array:361:5: note: candidate: 'template<long unsigned int _Int, class _Tp, long unsigned int _Nm> constexpr _Tp& std::get(std::array<_Tp, _Nm>&)' 361 | get(array<_Tp, _Nm>& __arr) noexcept | ^~~ /usr/include/c++/11/array:361:5: note: template argument deduction/substitution failed: curtains.cpp:83:25: note: mismatched types 'std::array<_Tp, _Nm>' and 'long long int' 83 | if (get (i.F.F, i.F.S) > 0){ | ~~~~^~~~~~~~~~~~~~ In file included from /usr/include/c++/11/tuple:39, from /usr/include/c++/11/functional:54, from /usr/include/c++/11/pstl/glue_algorithm_defs.h:13, from /usr/include/c++/11/algorithm:74, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from curtains.cpp:3: /usr/include/c++/11/array:369:5: note: candidate: 'template<long unsigned int _Int, class _Tp, long unsigned int _Nm> constexpr _Tp&& std::get(std::array<_Tp, _Nm>&&)' 369 | get(array<_Tp, _Nm>&& __arr) noexcept | ^~~ /usr/include/c++/11/array:369:5: note: template argument deduction/substitution failed: curtains.cpp:83:25: note: mismatched types 'std::array<_Tp, _Nm>' and 'long long int' 83 | if (get (i.F.F, i.F.S) > 0){ | ~~~~^~~~~~~~~~~~~~ In file included from /usr/include/c++/11/tuple:39, from /usr/include/c++/11/functional:54, from /usr/include/c++/11/pstl/glue_algorithm_defs.h:13, from /usr/include/c++/11/algorithm:74, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from curtains.cpp:3: /usr/include/c++/11/array:377:5: note: candidate: 'template<long unsigned int _Int, class _Tp, long unsigned int _Nm> constexpr const _Tp& std::get(const std::array<_Tp, _Nm>&)' 377 | get(const array<_Tp, _Nm>& __arr) noexcept | ^~~ /usr/include/c++/11/array:377:5: note: template argument deduction/substitution failed: curtains.cpp:83:25: note: mismatched types 'const std::array<_Tp, _Nm>' and 'long long int' 83 | if (get (i.F.F, i.F.S) > 0){ | ~~~~^~~~~~~~~~~~~~ In file included from /usr/include/c++/11/tuple:39, from /usr/include/c++/11/functional:54, from /usr/include/c++/11/pstl/glue_algorithm_defs.h:13, from /usr/include/c++/11/algorithm:74, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from curtains.cpp:3: /usr/include/c++/11/array:385:5: note: candidate: 'template<long unsigned int _Int, class _Tp, long unsigned int _Nm> constexpr const _Tp&& std::get(const std::array<_Tp, _Nm>&&)' 385 | get(const array<_Tp, _Nm>&& __arr) noexcept | ^~~ /usr/include/c++/11/array:385:5: note: template argument deduction/substitution failed: curtains.cpp:83:25: note: mismatched types 'const std::array<_Tp, _Nm>' and 'long long int' 83 | if (get (i.F.F, i.F.S) > 0){ | ~~~~^~~~~~~~~~~~~~ In file included from /usr/include/c++/11/functional:54, from /usr/include/c++/11/pstl/glue_algorithm_defs.h:13, from /usr/include/c++/11/algorithm:74, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from curtains.cpp:3: /usr/include/c++/11/tuple:1393:5: note: candidate: 'template<long unsigned int __i, class ... _Elements> constexpr std::__tuple_element_t<__i, std::tuple<_UTypes ...> >& std::get(std::tuple<_UTypes ...>&)' 1393 | get(tuple<_Elements...>& __t) noexcept | ^~~ /usr/include/c++/11/tuple:1393:5: note: template argument deduction/substitution failed: curtains.cpp:83:25: note: mismatched types 'std::tuple<_UTypes ...>' and 'long long int' 83 | if (get (i.F.F, i.F.S) > 0){ | ~~~~^~~~~~~~~~~~~~ In file included from /usr/include/c++/11/functional:54, from /usr/include/c++/11/pstl/glue_algorithm_defs.h:13, from /usr/include/c++/11/algorithm:74, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from curtains.cpp:3: /usr/include/c++/11/tuple:1399:5: note: candidate: 'template<long unsigned int __i, class ... _Elements> constexpr std::__tuple_element_t<__i, std::tuple<_UTypes ...> >& std::get(const std::tuple<_UTypes ...>&)' 1399 | get(const tuple<_Elements...>& __t) noexcept | ^~~ /usr/include/c++/11/tuple:1399:5: note: template argument deduction/substitution failed: curtains.cpp:83:25: note: mismatched types 'const std::tuple<_UTypes ...>' and 'long long int' 83 | if (get (i.F.F, i.F.S) > 0){ | ~~~~^~~~~~~~~~~~~~ In file included from /usr/include/c++/11/functional:54, from /usr/include/c++/11/pstl/glue_algorithm_defs.h:13, from /usr/include/c++/11/algorithm:74, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from curtains.cpp:3: /usr/include/c++/11/tuple:1405:5: note: candidate: 'template<long unsigned int __i, class ... _Elements> constexpr std::__tuple_element_t<__i, std::tuple<_UTypes ...> >&& std::get(std::tuple<_UTypes ...>&&)' 1405 | get(tuple<_Elements...>&& __t) noexcept | ^~~ /usr/include/c++/11/tuple:1405:5: note: template argument deduction/substitution failed: curtains.cpp:83:25: note: mismatched types 'std::tuple<_UTypes ...>' and 'long long int' 83 | if (get (i.F.F, i.F.S) > 0){ | ~~~~^~~~~~~~~~~~~~ In file included from /usr/include/c++/11/functional:54, from /usr/include/c++/11/pstl/glue_algorithm_defs.h:13, from /usr/include/c++/11/algorithm:74, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from curtains.cpp:3: /usr/include/c++/11/tuple:1414:5: note: candidate: 'template<long unsigned int __i, class ... _Elements> constexpr std::__tuple_element_t<__i, std::tuple<_UTypes ...> >&& std::get(const std::tuple<_UTypes ...>&&)' 1414 | get(const tuple<_Elements...>&& __t) noexcept | ^~~ /usr/include/c++/11/tuple:1414:5: note: template argument deduction/substitution failed: curtains.cpp:83:25: note: mismatched types 'const std::tuple<_UTypes ...>' and 'long long int' 83 | if (get (i.F.F, i.F.S) > 0){ | ~~~~^~~~~~~~~~~~~~ In file included from /usr/include/c++/11/functional:54, from /usr/include/c++/11/pstl/glue_algorithm_defs.h:13, from /usr/include/c++/11/algorithm:74, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from curtains.cpp:3: /usr/include/c++/11/tuple:1449:5: note: candidate: 'template<class _Tp, class ... _Types> constexpr _Tp& std::get(std::tuple<_UTypes ...>&)' 1449 | get(tuple<_Types...>& __t) noexcept | ^~~ /usr/include/c++/11/tuple:1449:5: note: template argument deduction/substitution failed: curtains.cpp:83:25: note: mismatched types 'std::tuple<_UTypes ...>' and 'long long int' 83 | if (get (i.F.F, i.F.S) > 0){ | ~~~~^~~~~~~~~~~~~~ In file included from /usr/include/c++/11/functional:54, from /usr/include/c++/11/pstl/glue_algorithm_defs.h:13, from /usr/include/c++/11/algorithm:74, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from curtains.cpp:3: /usr/include/c++/11/tuple:1460:5: note: candidate: 'template<class _Tp, class ... _Types> constexpr _Tp&& std::get(std::tuple<_UTypes ...>&&)' 1460 | get(tuple<_Types...>&& __t) noexcept | ^~~ /usr/include/c++/11/tuple:1460:5: note: template argument deduction/substitution failed: curtains.cpp:83:25: note: mismatched types 'std::tuple<_UTypes ...>' and 'long long int' 83 | if (get (i.F.F, i.F.S) > 0){ | ~~~~^~~~~~~~~~~~~~ In file included from /usr/include/c++/11/functional:54, from /usr/include/c++/11/pstl/glue_algorithm_defs.h:13, from /usr/include/c++/11/algorithm:74, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from curtains.cpp:3: /usr/include/c++/11/tuple:1471:5: note: candidate: 'template<class _Tp, class ... _Types> constexpr const _Tp& std::get(const std::tuple<_UTypes ...>&)' 1471 | get(const tuple<_Types...>& __t) noexcept | ^~~ /usr/include/c++/11/tuple:1471:5: note: template argument deduction/substitution failed: curtains.cpp:83:25: note: mismatched types 'const std::tuple<_UTypes ...>' and 'long long int' 83 | if (get (i.F.F, i.F.S) > 0){ | ~~~~^~~~~~~~~~~~~~ In file included from /usr/include/c++/11/functional:54, from /usr/include/c++/11/pstl/glue_algorithm_defs.h:13, from /usr/include/c++/11/algorithm:74, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from curtains.cpp:3: /usr/include/c++/11/tuple:1483:5: note: candidate: 'template<class _Tp, class ... _Types> constexpr const _Tp&& std::get(const std::tuple<_UTypes ...>&&)' 1483 | get(const tuple<_Types...>&& __t) noexcept | ^~~ /usr/include/c++/11/tuple:1483:5: note: template argument deduction/substitution failed: curtains.cpp:83:25: note: mismatched types 'const std::tuple<_UTypes ...>' and 'long long int' 83 | if (get (i.F.F, i.F.S) > 0){ | ~~~~^~~~~~~~~~~~~~ In file included from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:133, from curtains.cpp:3: /usr/include/c++/11/variant:1676:5: note: candidate: 'template<long unsigned int _Np, class ... _Types> constexpr std::variant_alternative_t<_Np, std::variant<_Types ...> >& std::get(std::variant<_Types ...>&)' 1676 | get(variant<_Types...>& __v) | ^~~ /usr/include/c++/11/variant:1676:5: note: template argument deduction/substitution failed: curtains.cpp:83:25: note: mismatched types 'std::variant<_Types ...>' and 'long long int' 83 | if (get (i.F.F, i.F.S) > 0){ | ~~~~^~~~~~~~~~~~~~ In file included from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:133, from curtains.cpp:3: /usr/include/c++/11/variant:1687:5: note: candidate: 'template<long unsigned int _Np, class ... _Types> constexpr std::variant_alternative_t<_Np, std::variant<_Types ...> >&& std::get(std::variant<_Types ...>&&)' 1687 | get(variant<_Types...>&& __v) | ^~~ /usr/include/c++/11/variant:1687:5: note: template argument deduction/substitution failed: curtains.cpp:83:25: note: mismatched types 'std::variant<_Types ...>' and 'long long int' 83 | if (get (i.F.F, i.F.S) > 0){ | ~~~~^~~~~~~~~~~~~~ In file included from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:133, from curtains.cpp:3: /usr/include/c++/11/variant:1698:5: note: candidate: 'template<long unsigned int _Np, class ... _Types> constexpr std::variant_alternative_t<_Np, std::variant<_Types ...> >& std::get(const std::variant<_Types ...>&)' 1698 | get(const variant<_Types...>& __v) | ^~~ /usr/include/c++/11/variant:1698:5: note: template argument deduction/substitution failed: curtains.cpp:83:25: note: mismatched types 'const std::variant<_Types ...>' and 'long long int' 83 | if (get (i.F.F, i.F.S) > 0){ | ~~~~^~~~~~~~~~~~~~ In file included from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:133, from curtains.cpp:3: /usr/include/c++/11/variant:1709:5: note: candidate: 'template<long unsigned int _Np, class ... _Types> constexpr std::variant_alternative_t<_Np, std::variant<_Types ...> >&& std::get(const std::variant<_Types ...>&&)' 1709 | get(const variant<_Types...>&& __v) | ^~~ /usr/include/c++/11/variant:1709:5: note: template argument deduction/substitution failed: curtains.cpp:83:25: note: mismatched types 'const std::variant<_Types ...>' and 'long long int' 83 | if (get (i.F.F, i.F.S) > 0){ | ~~~~^~~~~~~~~~~~~~ In file included from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:133, from curtains.cpp:3: /usr/include/c++/11/variant:1117:20: note: candidate: 'template<class _Tp, class ... _Types> constexpr _Tp& std::get(std::variant<_Types ...>&)' 1117 | constexpr _Tp& get(variant<_Types...>& __v) | ^~~ /usr/include/c++/11/variant:1117:20: note: template argument deduction/substitution failed: curtains.cpp:83:25: note: mismatched types 'std::variant<_Types ...>' and 'long long int' 83 | if (get (i.F.F, i.F.S) > 0){ | ~~~~^~~~~~~~~~~~~~ In file included from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:133, from curtains.cpp:3: /usr/include/c++/11/variant:1126:21: note: candidate: 'template<class _Tp, class ... _Types> constexpr _Tp&& std::get(std::variant<_Types ...>&&)' 1126 | constexpr _Tp&& get(variant<_Types...>&& __v) | ^~~ /usr/include/c++/11/variant:1126:21: note: template argument deduction/substitution failed: curtains.cpp:83:25: note: mismatched types 'std::variant<_Types ...>' and 'long long int' 83 | if (get (i.F.F, i.F.S) > 0){ | ~~~~^~~~~~~~~~~~~~ In file included from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:133, from curtains.cpp:3: /usr/include/c++/11/variant:1136:26: note: candidate: 'template<class _Tp, class ... _Types> constexpr const _Tp& std::get(const std::variant<_Types ...>&)' 1136 | constexpr const _Tp& get(const variant<_Types...>& __v) | ^~~ /usr/include/c++/11/variant:1136:26: note: template argument deduction/substitution failed: curtains.cpp:83:25: note: mismatched types 'const std::variant<_Types ...>' and 'long long int' 83 | if (get (i.F.F, i.F.S) > 0){ | ~~~~^~~~~~~~~~~~~~ In file included from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:133, from curtains.cpp:3: /usr/include/c++/11/variant:1145:27: note: candidate: 'template<class _Tp, class ... _Types> constexpr const _Tp&& std::get(const std::variant<_Types ...>&&)' 1145 | constexpr const _Tp&& get(const variant<_Types...>&& __v) | ^~~ /usr/include/c++/11/variant:1145:27: note: template argument deduction/substitution failed: curtains.cpp:83:25: note: mismatched types 'const std::variant<_Types ...>' and 'long long int' 83 | if (get (i.F.F, i.F.S) > 0){ | ~~~~^~~~~~~~~~~~~~