| # | Time | Username | Problem | Language | Result | Execution time | Memory |
|---|---|---|---|---|---|---|---|
| 812466 | andrei_boaca | Thousands Islands (IOI22_islands) | C++17 | Compilation error | 0 ms | 0 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include "islands.h"
#include <variant>
#include <vector>
//#include <bits/stdc++.h>
#include "grader.cpp"
using namespace std;
struct date
{
int nod,a,b;
};
vector<date> muchii[100005];
vector<int> c[1005][1005];
bool useedge[300005],usenod[300005];
int n,m;
bool good=0;
void dfs(int nod)
{
if(good)
return;
usenod[nod]=1;
for(date i:muchii[nod])
{
if(good)
return;
if(!useedge[i.a]&&!useedge[i.b])
{
if(usenod[i.nod])
{
good=1;
return;
}
else
{
useedge[i.a]=1;
useedge[i.b]=1;
dfs(i.nod);
useedge[i.a]=0;
useedge[i.b]=0;
}
}
}
}
std::variant<bool, std::vector<int>> find_journey(int N, int M, std::vector<int> U, std::vector<int> V)
{
n=N;
m=M;
for(int i=0;i<m;i++)
{
int a=U[i];
int b=V[i];
c[a][b].push_back(i);
}
if(n==2)
{
if(c[0][1].size()>=2&&c[1][0]>=1)
return true;
return false;
}
for(int a=0;a<n;a++)
for(int b=0;b<n;b++)
if(a!=b)
{
for(int i=0;i<c[a][b].size()&&i<c[b][a].size();i++)
{
int x=c[a][b][i];
int y=c[b][a][i];
muchii[a].push_back({b,x,y});
}
}
dfs(0);
return good;
}
Compilation message (stderr)
islands.cpp: In function 'std::variant<bool, std::vector<int, std::allocator<int> > > find_journey(int, int, std::vector<int>, std::vector<int>)':
islands.cpp:57:38: error: no match for 'operator>=' (operand types are 'std::vector<int>' and 'int')
57 | if(c[0][1].size()>=2&&c[1][0]>=1)
| ~~~~~~~^~~
| | |
| | int
| std::vector<int>
In file included from /usr/include/c++/10/utility:70,
from /usr/include/c++/10/variant:37,
from islands.h:1,
from islands.cpp:1:
/usr/include/c++/10/bits/stl_pair.h:514:5: note: candidate: 'template<class _T1, class _T2> constexpr bool std::operator>=(const std::pair<_T1, _T2>&, const std::pair<_T1, _T2>&)'
514 | operator>=(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y)
| ^~~~~~~~
/usr/include/c++/10/bits/stl_pair.h:514:5: note: template argument deduction/substitution failed:
islands.cpp:57:40: note: 'std::vector<int>' is not derived from 'const std::pair<_T1, _T2>'
57 | if(c[0][1].size()>=2&&c[1][0]>=1)
| ^
In file included from islands.h:1,
from islands.cpp:1:
/usr/include/c++/10/variant:1188:3: note: candidate: 'template<class ... _Types> constexpr bool std::operator>=(const std::variant<_Types ...>&, const std::variant<_Types ...>&)'
1188 | _VARIANT_RELATION_FUNCTION_TEMPLATE(>=, greater_equal)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/10/variant:1188:3: note: template argument deduction/substitution failed:
islands.cpp:57:40: note: 'std::vector<int>' is not derived from 'const std::variant<_Types ...>'
57 | if(c[0][1].size()>=2&&c[1][0]>=1)
| ^
In file included from islands.h:1,
from islands.cpp:1:
/usr/include/c++/10/variant:1229:18: note: candidate: 'constexpr bool std::operator>=(std::monostate, std::monostate)'
1229 | constexpr bool operator>=(monostate, monostate) noexcept { return true; }
| ^~~~~~~~
/usr/include/c++/10/variant:1229:29: note: no known conversion for argument 1 from 'std::vector<int>' to 'std::monostate'
1229 | constexpr bool operator>=(monostate, monostate) noexcept { return true; }
| ^~~~~~~~~
In file included from /usr/include/c++/10/bits/stl_algobase.h:67,
from /usr/include/c++/10/vector:60,
from islands.h:2,
from islands.cpp:1:
/usr/include/c++/10/bits/stl_iterator.h:390:5: note: candidate: 'template<class _Iterator> constexpr bool std::operator>=(const std::reverse_iterator<_Iterator>&, const std::reverse_iterator<_Iterator>&)'
390 | operator>=(const reverse_iterator<_Iterator>& __x,
| ^~~~~~~~
/usr/include/c++/10/bits/stl_iterator.h:390:5: note: template argument deduction/substitution failed:
islands.cpp:57:40: note: 'std::vector<int>' is not derived from 'const std::reverse_iterator<_Iterator>'
57 | if(c[0][1].size()>=2&&c[1][0]>=1)
| ^
In file included from /usr/include/c++/10/bits/stl_algobase.h:67,
from /usr/include/c++/10/vector:60,
from islands.h:2,
from islands.cpp:1:
/usr/include/c++/10/bits/stl_iterator.h:428:5: note: candidate: 'template<class _IteratorL, class _IteratorR> constexpr bool std::operator>=(const std::reverse_iterator<_Iterator>&, const std::reverse_iterator<_IteratorR>&)'
428 | operator>=(const reverse_iterator<_IteratorL>& __x,
| ^~~~~~~~
/usr/include/c++/10/bits/stl_iterator.h:428:5: note: template argument deduction/substitution failed:
islands.cpp:57:40: note: 'std::vector<int>' is not derived from 'const std::reverse_iterator<_Iterator>'
57 | if(c[0][1].size()>=2&&c[1][0]>=1)
| ^
In file included from /usr/include/c++/10/bits/stl_algobase.h:67,
from /usr/include/c++/10/vector:60,
from islands.h:2,
from islands.cpp:1:
/usr/include/c++/10/bits/stl_iterator.h:1478:5: note: candidate: 'template<class _IteratorL, class _IteratorR> constexpr bool std::operator>=(const std::move_iterator<_IteratorL>&, const std::move_iterator<_IteratorR>&)'
1478 | operator>=(const move_iterator<_IteratorL>& __x,
| ^~~~~~~~
/usr/include/c++/10/bits/stl_iterator.h:1478:5: note: template argument deduction/substitution failed:
islands.cpp:57:40: note: 'std::vector<int>' is not derived from 'const std::move_iterator<_IteratorL>'
57 | if(c[0][1].size()>=2&&c[1][0]>=1)
| ^
In file included from /usr/include/c++/10/bits/stl_algobase.h:67,
from /usr/include/c++/10/vector:60,
from islands.h:2,
from islands.cpp:1:
/usr/include/c++/10/bits/stl_iterator.h:1525:5: note: candidate: 'template<class _Iterator> constexpr bool std::operator>=(const std::move_iterator<_IteratorL>&, const std::move_iterator<_IteratorL>&)'
1525 | operator>=(const move_iterator<_Iterator>& __x,
| ^~~~~~~~
/usr/include/c++/10/bits/stl_iterator.h:1525:5: note: template argument deduction/substitution failed:
islands.cpp:57:40: note: 'std::vector<int>' is not derived from 'const std::move_iterator<_IteratorL>'
57 | if(c[0][1].size()>=2&&c[1][0]>=1)
| ^
In file included from /usr/include/c++/10/vector:67,
from islands.h:2,
from islands.cpp:1:
/usr/include/c++/10/bits/stl_vector.h:1955:5: note: candidate: 'template<class _Tp, class _Alloc> bool std::operator>=(const std::vector<_Tp, _Alloc>&, const std::vector<_Tp, _Alloc>&)'
1955 | operator>=(const vector<_Tp, _Alloc>& __x, const vector<_Tp, _Alloc>& __y)
| ^~~~~~~~
/usr/include/c++/10/bits/stl_vector.h:1955:5: note: template argument deduction/substitution failed:
islands.cpp:57:40: note: mismatched types 'const std::vector<_Tp, _Alloc>' and 'int'
57 | if(c[0][1].size()>=2&&c[1][0]>=1)
| ^
In file included from /usr/include/c++/10/bits/basic_string.h:48,
from /usr/include/c++/10/string:55,
from grader.cpp:7,
from islands.cpp:6:
/usr/include/c++/10/string_view:601:5: note: candidate: 'template<class _CharT, class _Traits> constexpr bool std::operator>=(std::basic_string_view<_CharT, _Traits>, std::basic_string_view<_CharT, _Traits>)'
601 | operator>=(basic_string_view<_CharT, _Traits> __x,
| ^~~~~~~~
/usr/include/c++/10/string_view:601:5: note: template argument deduction/substitution failed:
islands.cpp:57:40: note: 'std::vector<int>' is not derived from 'std::basic_string_view<_CharT, _Traits>'
57 | if(c[0][1].size()>=2&&c[1][0]>=1)
| ^
In file included from /usr/include/c++/10/bits/basic_string.h:48,
from /usr/include/c++/10/string:55,
from grader.cpp:7,
from islands.cpp:6:
/usr/include/c++/10/string_view:607:5: note: candidate: 'template<class _CharT, class _Traits> constexpr bool std::operator>=(std::basic_string_view<_CharT, _Traits>, std::__type_identity_t<std::basic_string_view<_CharT, _Traits> >)'
607 | operator>=(basic_string_view<_CharT, _Traits> __x,
| ^~~~~~~~
/usr/include/c++/10/string_view:607:5: note: template argument deduction/substitution failed:
islands.cpp:57:40: note: 'std::vector<int>' is not derived from 'std::basic_string_view<_CharT, _Traits>'
57 | if(c[0][1].size()>=2&&c[1][0]>=1)
| ^
In file included from /usr/include/c++/10/bits/basic_string.h:48,
from /usr/include/c++/10/string:55,
from grader.cpp:7,
from islands.cpp:6:
/usr/include/c++/10/string_view:614:5: note: candidate: 'template<class _CharT, class _Traits> constexpr bool std::operator>=(std::__type_identity_t<std::basic_string_view<_CharT, _Traits> >, std::basic_string_view<_CharT, _Traits>)'
614 | operator>=(__type_identity_t<basic_string_view<_CharT, _Traits>> __x,
| ^~~~~~~~
/usr/include/c++/10/string_view:614:5: note: template argument deduction/substitution failed:
islands.cpp:57:40: note: mismatched types 'std::basic_string_view<_CharT, _Traits>' and 'int'
57 | if(c[0][1].size()>=2&&c[1][0]>=1)
| ^
In file included from /usr/include/c++/10/string:55,
from grader.cpp:7,
from islands.cpp:6:
/usr/include/c++/10/bits/basic_string.h:6381:5: note: candidate: 'template<class _CharT, class _Traits, class _Alloc> bool std::operator>=(const std::__cxx11::basic_string<_CharT, _Traits, _Allocator>&, const std::__cxx11::basic_string<_CharT, _Traits, _Allocator>&)'
6381 | operator>=(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
| ^~~~~~~~
/usr/include/c++/10/bits/basic_string.h:6381:5: note: template argument deduction/substitution failed:
islands.cpp:57:40: note: 'std::vector<int>' is not derived from 'const std::__cxx11::basic_string<_CharT, _Traits, _Allocator>'
57 | if(c[0][1].size()>=2&&c[1][0]>=1)
| ^
In file included from /usr/include/c++/10/string:55,
from grader.cpp:7,
from islands.cpp:6:
/usr/include/c++/10/bits/basic_string.h:6394:5: note: candidate: 'template<class _CharT, class _Traits, class _Alloc> bool std::operator>=(const std::__cxx11::basic_string<_CharT, _Traits, _Allocator>&, const _CharT*)'
6394 | operator>=(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
| ^~~~~~~~
/usr/include/c++/10/bits/basic_string.h:6394:5: note: template argument deduction/substitution failed:
islands.cpp:57:40: note: 'std::vector<int>' is not derived from 'const std::__cxx11::basic_string<_CharT, _Traits, _Allocator>'
57 | if(c[0][1].size()>=2&&c[1][0]>=1)
| ^
In file included from /usr/include/c++/10/string:55,
from grader.cpp:7,
from islands.cpp:6:
/usr/include/c++/10/bits/basic_string.h:6406:5: note: candidate: 'template<class _CharT, class _Traits, class _Alloc> bool std::operator>=(const _CharT*, const std::__cxx11::basic_string<_CharT, _Traits, _Allocator>&)'
6406 | operator>=(const _CharT* __lhs,
| ^~~~~~~~
/usr/include/c++/10/bits/basic_string.h:6406:5: note: template argument deduction/substitution failed:
islands.cpp:57:40: note: mismatched types 'const _CharT*' and 'std::vector<int>'
57 | if(c[0][1].size()>=2&&c[1][0]>=1)
| ^
In file included from /usr/include/c++/10/bits/stl_algobase.h:67,
from /usr/include/c++/10/vector:60,
from islands.h:2,
from islands.cpp:1:
/usr/include/c++/10/bits/stl_iterator.h:1141:5: note: candidate: 'template<class _IteratorL, class _IteratorR, class _Container> bool __gnu_cxx::operator>=(const __gnu_cxx::__normal_iterator<_IteratorL, _Container>&, const __gnu_cxx::__normal_iterator<_IteratorR, _Container>&)'
1141 | operator>=(const __normal_iterator<_IteratorL, _Container>& __lhs,
| ^~~~~~~~
/usr/include/c++/10/bits/stl_iterator.h:1141:5: note: template argument deduction/substitution failed:
islands.cpp:57:40: note: 'std::vector<int>' is not derived from 'const __gnu_cxx::__normal_iterator<_IteratorL, _Container>'
57 | if(c[0][1].size()>=2&&c[1][0]>=1)
| ^
In file included from /usr/include/c++/10/bits/stl_algobase.h:67,
from /usr/include/c++/10/vector:60,
from islands.h:2,
from islands.cpp:1:
/usr/include/c++/10/bits/stl_iterator.h:1149:5: note: candidate: 'template<class _Iterator, class _Container> bool __gnu_cxx::operator>=(const __gnu_cxx::__normal_iterator<_Iterator, _Container>&, const __gnu_cxx::__normal_iterator<_Iterator, _Container>&)'
1149 | operator>=(const __normal_iterator<_Iterator, _Container>& __lhs,
| ^~~~~~~~
/usr/include/c++/10/bits/stl_iterator.h:1149:5: note: template argument deduction/substitution failed:
islands.cpp:57:40: note: 'std::vector<int>' is not derived from 'const __gnu_cxx::__normal_iterator<_Iterator, _Container>'
57 | if(c[0][1].size()>=2&&c[1][0]>=1)
| ^
islands.cpp:65:30: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
65 | for(int i=0;i<c[a][b].size()&&i<c[b][a].size();i++)
| ~^~~~~~~~~~~~~~~
islands.cpp:65:48: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
65 | for(int i=0;i<c[a][b].size()&&i<c[b][a].size();i++)
| ~^~~~~~~~~~~~~~~