#1041
Biperm
Pentru un număr natural nenul n
, să considerăm toate numerele naturale nenule mai mici sau egale cu n
, luând fiecare număr de câte două ori: 1, 1, 2, 2, 3, 3, ... , n, n
. Aceste numere le amestecăm aleator, şi le aranjăm pe două linii a câte n
elemente. Structura astfel obţinută o vom numi o bipermutare. În figurile 1, 2 şi 3 avem câte un exemplu de bipermutare pentru n=5
.
O bipermutare este perfectă, dacă ambele linii ale structurii reprezintă câte o permutare (vezi figurile 2 şi 3).
Prin mutare pe poziţia p
, înţelegem interschimbarea elementelor de pe aceeaşi coloană p
. În exemplele de mai jos, bipermutarea perfectă din figura 2 s-a obţinut din bipermutarea din figura 1, aplicând o mutare pe poziţa 2
. Bipermutarea perfectă din figura 3 s-a obţinut din bipermutarea din figura 1, aplicând mutări pe poziţiile 1
, 2
, 4
şi 5
.
Cunoscând o bipermutare, determinaţi:
OJI 2013, clasele XI-XII
Problema | Biperm | Operații I/O |
biperm.in /biperm.out
|
---|---|---|---|
Limita timp | 1 secunde | Limita memorie |
Total: 128 MB
/
Stivă 64 MB
|
Id soluție | #51670234 | Utilizator | |
Fișier | biperm.cpp | Dimensiune | 1.71 KB |
Data încărcării | 31 Iulie 2024, 14:44 | Scor / rezultat | Eroare de compilare |
biperm.cpp: In function 'int dfs(int, int)': biperm.cpp:22:23: error: no matching function for call to 'std::set<int>::find(std::vector<std::pair<int, int> >&)' if (current.find(e) != current.end()) ^ biperm.cpp:22:23: note: candidates are: In file included from /usr/include/c++/4.8/set:61:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:86, from biperm.cpp:1: /usr/include/c++/4.8/bits/stl_set.h:662:7: note: std::set<_Key, _Compare, _Alloc>::iterator std::set<_Key, _Compare, _Alloc>::find(const key_type&) [with _Key = int; _Compare = std::less<int>; _Alloc = std::allocator<int>; std::set<_Key, _Compare, _Alloc>::iterator = std::_Rb_tree_const_iterator<int>; std::set<_Key, _Compare, _Alloc>::key_type = int] find(const key_type& __x) ^ /usr/include/c++/4.8/bits/stl_set.h:662:7: note: no known conversion for argument 1 from 'std::vector<std::pair<int, int> >' to 'const key_type& {aka const int&}' /usr/include/c++/4.8/bits/stl_set.h:666:7: note: std::set<_Key, _Compare, _Alloc>::const_iterator std::set<_Key, _Compare, _Alloc>::find(const key_type&) const [with _Key = int; _Compare = std::less<int>; _Alloc = std::allocator<int>; std::set<_Key, _Compare, _Alloc>::const_iterator = std::_Rb_tree_const_iterator<int>; std::set<_Key, _Compare, _Alloc>::key_type = int] find(const key_type& __x) const ^ /usr/include/c++/4.8/bits/stl_set.h:666:7: note: no known conversion for argument 1 from 'std::vector<std::pair<int, int> >' to 'const key_type& {aka const int&}' biperm.cpp:24:21: error: no matching function for call to 'std::set<int>::insert(std::vector<std::pair<int, int> >&)' current.insert(e); ^ biperm.cpp:24:21: note: candidates are: In file included from /usr/include/c++/4.8/set:61:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:86, from biperm.cpp:1: /usr/include/c++/4.8/bits/stl_set.h:460:7: note: std::pair<typename std::_Rb_tree<_Key, _Key, std::_Identity<_Key>, _Compare, typename _Alloc::rebind<_Key>::other>::const_iterator, bool> std::set<_Key, _Compare, _Alloc>::insert(const value_type&) [with _Key = int; _Compare = std::less<int>; _Alloc = std::allocator<int>; typename std::_Rb_tree<_Key, _Key, std::_Identity<_Key>, _Compare, typename _Alloc::rebind<_Key>::other>::const_iterator = std::_Rb_tree_const_iterator<int>; std::set<_Key, _Compare, _Alloc>::value_type = int] insert(const value_type& __x) ^ /usr/include/c++/4.8/bits/stl_set.h:460:7: note: no known conversion for argument 1 from 'std::vector<std::pair<int, int> >' to 'const value_type& {aka const int&}' /usr/include/c++/4.8/bits/stl_set.h:469:7: note: std::pair<typename std::_Rb_tree<_Key, _Key, std::_Identity<_Key>, _Compare, typename _Alloc::rebind<_Key>::other>::const_iterator, bool> std::set<_Key, _Compare, _Alloc>::insert(std::set<_Key, _Compare, _Alloc>::value_type&&) [with _Key = int; _Compare = std::less<int>; _Alloc = std::allocator<int>; typename std::_Rb_tree<_Key, _Key, std::_Identity<_Key>, _Compare, typename _Alloc::rebind<_Key>::other>::const_iterator = std::_Rb_tree_const_iterator<int>; std::set<_Key, _Compare, _Alloc>::value_type = int] insert(value_type&& __x) ^ /usr/include/c++/4.8/bits/stl_set.h:469:7: note: no known conversion for argument 1 from 'std::vector<std::pair<int, int> >' to 'std::set<int>::value_type&& {aka int&&}' /usr/include/c++/4.8/bits/stl_set.h:497:7: note: std::set<_Key, _Compare, _Alloc>::iterator std::set<_Key, _Compare, _Alloc>::insert(std::set<_Key, _Compare, _Alloc>::const_iterator, const value_type&) [with _Key = int; _Compare = std::less<int>; _Alloc = std::allocator<int>; std::set<_Key, _Compare, _Alloc>::iterator = std::_Rb_tree_const_iterator<int>; std::set<_Key, _Compare, _Alloc>::const_iterator = std::_Rb_tree_const_iterator<int>; std::set<_Key, _Compare, _Alloc>::value_type = int] insert(const_iterator __position, const value_type& __x) ^ /usr/include/c++/4.8/bits/stl_set.h:497:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/4.8/bits/stl_set.h:502:7: note: std::set<_Key, _Compare, _Alloc>::iterator std::set<_Key, _Compare, _Alloc>::insert(std::set<_Key, _Compare, _Alloc>::const_iterator, std::set<_Key, _Compare, _Alloc>::value_type&&) [with _Key = int; _Compare = std::less<int>; _Alloc = std::allocator<int>; std::set<_Key, _Compare, _Alloc>::iterator = std::_Rb_tree_const_iterator<int>; std::set<_Key, _Compare, _Alloc>::const_iterator = std::_Rb_tree_const_iterator<int>; std::set<_Key, _Compare, _Alloc>::value_type = int] insert(const_iterator __position, value_type&& __x) ^ /usr/include/c++/4.8/bits/stl_set.h:502:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/4.8/bits/stl_set.h:517:2: note: template<class _InputIterator> void std::set<_Key, _Compare, _Alloc>::insert(_InputIterator, _InputIterator) [with _InputIterator = _InputIterator; _Key = int; _Compare = std::less<int>; _Alloc = std::allocator<int>] insert(_InputIterator __first, _InputIterator __last) ^ /usr/include/c++/4.8/bits/stl_set.h:517:2: note: template argument deduction/substitution failed: biperm.cpp:24:21: note: candidate expects 2 arguments, 1 provided current.insert(e); ^ In file included from /usr/include/c++/4.8/set:61:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:86, from biperm.cpp:1: /usr/include/c++/4.8/bits/stl_set.h:529:7: note: void std::set<_Key, _Compare, _Alloc>::insert(std::initializer_list<_Tp>) [with _Key = int; _Compare = std::less<int>; _Alloc = std::allocator<int>] insert(initializer_list<value_type> __l) ^ /usr/include/c++/4.8/bits/stl_set.h:529:7: note: no known conversion for argument 1 from 'std::vector<std::pair<int, int> >' to 'std::initializer_list<int>' biperm.cpp:25:13: error: no match for 'operator[]' (operand types are 'bool [10002]' and 'const std::pair<int, int>') if (!viz[v]) { ^ biperm.cpp:26:12: error: no match for 'operator[]' (operand types are 'int [10002]' and 'std::vector<std::pair<int, int> >') if (l[e] == u && r[e] == v) { ^ biperm.cpp:26:25: error: no match for 'operator[]' (operand types are 'int [10002]' and 'std::vector<std::pair<int, int> >') if (l[e] == u && r[e] == v) { ^ biperm.cpp:28:12: error: no match for 'operator[]' (operand types are 'bool [10002]' and 'std::vector<std::pair<int, int> >') swp[e] = true; ^ biperm.cpp:29:20: error: no match for 'operator!=' (operand types are 'std::vector<std::pair<int, int> >' and 'int') } else if (e != p) { ^ biperm.cpp:29:20: note: candidates are: In file included from /usr/include/c++/4.8/iosfwd:40:0, from /usr/include/c++/4.8/ios:38, from /usr/include/c++/4.8/istream:38, from /usr/include/c++/4.8/sstream:38, from /usr/include/c++/4.8/complex:45, from /usr/include/c++/4.8/ccomplex:38, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:52, from biperm.cpp:1: /usr/include/c++/4.8/bits/postypes.h:221:5: note: template<class _StateT> bool std::operator!=(const std::fpos<_StateT>&, const std::fpos<_StateT>&) operator!=(const fpos<_StateT>& __lhs, const fpos<_StateT>& __rhs) ^ /usr/include/c++/4.8/bits/postypes.h:221:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::fpos<_StateT>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/bits/stl_algobase.h:64:0, from /usr/include/c++/4.8/bits/char_traits.h:39, from /usr/include/c++/4.8/ios:40, from /usr/include/c++/4.8/istream:38, from /usr/include/c++/4.8/sstream:38, from /usr/include/c++/4.8/complex:45, from /usr/include/c++/4.8/ccomplex:38, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:52, from biperm.cpp:1: /usr/include/c++/4.8/bits/stl_pair.h:227:5: note: template<class _T1, class _T2> constexpr bool std::operator!=(const std::pair<_T1, _T2>&, const std::pair<_T1, _T2>&) operator!=(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y) ^ /usr/include/c++/4.8/bits/stl_pair.h:227:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::pair<_T1, _T2>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/bits/stl_algobase.h:67:0, from /usr/include/c++/4.8/bits/char_traits.h:39, from /usr/include/c++/4.8/ios:40, from /usr/include/c++/4.8/istream:38, from /usr/include/c++/4.8/sstream:38, from /usr/include/c++/4.8/complex:45, from /usr/include/c++/4.8/ccomplex:38, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:52, from biperm.cpp:1: /usr/include/c++/4.8/bits/stl_iterator.h:303:5: note: template<class _Iterator> bool std::operator!=(const std::reverse_iterator<_Iterator>&, const std::reverse_iterator<_Iterator>&) operator!=(const reverse_iterator<_Iterator>& __x, ^ /usr/include/c++/4.8/bits/stl_iterator.h:303:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::reverse_iterator<_Iterator>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/bits/stl_algobase.h:67:0, from /usr/include/c++/4.8/bits/char_traits.h:39, from /usr/include/c++/4.8/ios:40, from /usr/include/c++/4.8/istream:38, from /usr/include/c++/4.8/sstream:38, from /usr/include/c++/4.8/complex:45, from /usr/include/c++/4.8/ccomplex:38, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:52, from biperm.cpp:1: /usr/include/c++/4.8/bits/stl_iterator.h:353:5: note: template<class _IteratorL, class _IteratorR> bool std::operator!=(const std::reverse_iterator<_Iterator>&, const std::reverse_iterator<_IteratorR>&) operator!=(const reverse_iterator<_IteratorL>& __x, ^ /usr/include/c++/4.8/bits/stl_iterator.h:353:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::reverse_iterator<_Iterator>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/bits/stl_algobase.h:67:0, from /usr/include/c++/4.8/bits/char_traits.h:39, from /usr/include/c++/4.8/ios:40, from /usr/include/c++/4.8/istream:38, from /usr/include/c++/4.8/sstream:38, from /usr/include/c++/4.8/complex:45, from /usr/include/c++/4.8/ccomplex:38, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:52, from biperm.cpp:1: /usr/include/c++/4.8/bits/stl_iterator.h:1043:5: note: template<class _IteratorL, class _IteratorR> bool std::operator!=(const std::move_iterator<_Iterator>&, const std::move_iterator<_IteratorR>&) operator!=(const move_iterator<_IteratorL>& __x, ^ /usr/include/c++/4.8/bits/stl_iterator.h:1043:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::move_iterator<_Iterator>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/bits/stl_algobase.h:67:0, from /usr/include/c++/4.8/bits/char_traits.h:39, from /usr/include/c++/4.8/ios:40, from /usr/include/c++/4.8/istream:38, from /usr/include/c++/4.8/sstream:38, from /usr/include/c++/4.8/complex:45, from /usr/include/c++/4.8/ccomplex:38, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:52, from biperm.cpp:1: /usr/include/c++/4.8/bits/stl_iterator.h:1049:5: note: template<class _Iterator> bool std::operator!=(const std::move_iterator<_Iterator>&, const std::move_iterator<_Iterator>&) operator!=(const move_iterator<_Iterator>& __x, ^ /usr/include/c++/4.8/bits/stl_iterator.h:1049:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::move_iterator<_Iterator>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/string:41:0, from /usr/include/c++/4.8/bits/locale_classes.h:40, from /usr/include/c++/4.8/bits/ios_base.h:41, from /usr/include/c++/4.8/ios:42, from /usr/include/c++/4.8/istream:38, from /usr/include/c++/4.8/sstream:38, from /usr/include/c++/4.8/complex:45, from /usr/include/c++/4.8/ccomplex:38, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:52, from biperm.cpp:1: /usr/include/c++/4.8/bits/allocator.h:138:5: note: template<class _T1, class _T2> bool std::operator!=(const std::allocator<_CharT>&, const std::allocator<_T2>&) operator!=(const allocator<_T1>&, const allocator<_T2>&) ^ /usr/include/c++/4.8/bits/allocator.h:138:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::allocator<_CharT>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/string:41:0, from /usr/include/c++/4.8/bits/locale_classes.h:40, from /usr/include/c++/4.8/bits/ios_base.h:41, from /usr/include/c++/4.8/ios:42, from /usr/include/c++/4.8/istream:38, from /usr/include/c++/4.8/sstream:38, from /usr/include/c++/4.8/complex:45, from /usr/include/c++/4.8/ccomplex:38, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:52, from biperm.cpp:1: /usr/include/c++/4.8/bits/allocator.h:143:5: note: template<class _Tp> bool std::operator!=(const std::allocator<_CharT>&, const std::allocator<_CharT>&) operator!=(const allocator<_Tp>&, const allocator<_Tp>&) ^ /usr/include/c++/4.8/bits/allocator.h:143:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::allocator<_CharT>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/string:52:0, from /usr/include/c++/4.8/bits/locale_classes.h:40, from /usr/include/c++/4.8/bits/ios_base.h:41, from /usr/include/c++/4.8/ios:42, from /usr/include/c++/4.8/istream:38, from /usr/include/c++/4.8/sstream:38, from /usr/include/c++/4.8/complex:45, from /usr/include/c++/4.8/ccomplex:38, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:52, from biperm.cpp:1: /usr/include/c++/4.8/bits/basic_string.h:2532:5: note: template<class _CharT, class _Traits, class _Alloc> bool std::operator!=(const std::basic_string<_CharT, _Traits, _Alloc>&, const std::basic_string<_CharT, _Traits, _Alloc>&) operator!=(const basic_string<_CharT, _Traits, _Alloc>& __lhs, ^ /usr/include/c++/4.8/bits/basic_string.h:2532:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::basic_string<_CharT, _Traits, _Alloc>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/string:52:0, from /usr/include/c++/4.8/bits/locale_classes.h:40, from /usr/include/c++/4.8/bits/ios_base.h:41, from /usr/include/c++/4.8/ios:42, from /usr/include/c++/4.8/istream:38, from /usr/include/c++/4.8/sstream:38, from /usr/include/c++/4.8/complex:45, from /usr/include/c++/4.8/ccomplex:38, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:52, from biperm.cpp:1: /usr/include/c++/4.8/bits/basic_string.h:2544:5: note: template<class _CharT, class _Traits, class _Alloc> bool std::operator!=(const _CharT*, const std::basic_string<_CharT, _Traits, _Alloc>&) operator!=(const _CharT* __lhs, ^ /usr/include/c++/4.8/bits/basic_string.h:2544:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: mismatched types 'const _CharT*' and 'std::vector<std::pair<int, int> >' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/string:52:0, from /usr/include/c++/4.8/bits/locale_classes.h:40, from /usr/include/c++/4.8/bits/ios_base.h:41, from /usr/include/c++/4.8/ios:42, from /usr/include/c++/4.8/istream:38, from /usr/include/c++/4.8/sstream:38, from /usr/include/c++/4.8/complex:45, from /usr/include/c++/4.8/ccomplex:38, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:52, from biperm.cpp:1: /usr/include/c++/4.8/bits/basic_string.h:2556:5: note: template<class _CharT, class _Traits, class _Alloc> bool std::operator!=(const std::basic_string<_CharT, _Traits, _Alloc>&, const _CharT*) operator!=(const basic_string<_CharT, _Traits, _Alloc>& __lhs, ^ /usr/include/c++/4.8/bits/basic_string.h:2556:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::basic_string<_CharT, _Traits, _Alloc>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/bits/locale_facets.h:48:0, from /usr/include/c++/4.8/bits/basic_ios.h:37, from /usr/include/c++/4.8/ios:44, from /usr/include/c++/4.8/istream:38, from /usr/include/c++/4.8/sstream:38, from /usr/include/c++/4.8/complex:45, from /usr/include/c++/4.8/ccomplex:38, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:52, from biperm.cpp:1: /usr/include/c++/4.8/bits/streambuf_iterator.h:210:5: note: template<class _CharT, class _Traits> bool std::operator!=(const std::istreambuf_iterator<_CharT, _Traits>&, const std::istreambuf_iterator<_CharT, _Traits>&) operator!=(const istreambuf_iterator<_CharT, _Traits>& __a, ^ /usr/include/c++/4.8/bits/streambuf_iterator.h:210:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::istreambuf_iterator<_CharT, _Traits>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/ccomplex:38:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:52, from biperm.cpp:1: /usr/include/c++/4.8/complex:474:5: note: template<class _Tp> constexpr bool std::operator!=(const std::complex<_Tp>&, const std::complex<_Tp>&) operator!=(const complex<_Tp>& __x, const complex<_Tp>& __y) ^ /usr/include/c++/4.8/complex:474:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::complex<_Tp>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/ccomplex:38:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:52, from biperm.cpp:1: /usr/include/c++/4.8/complex:479:5: note: template<class _Tp> constexpr bool std::operator!=(const std::complex<_Tp>&, const _Tp&) operator!=(const complex<_Tp>& __x, const _Tp& __y) ^ /usr/include/c++/4.8/complex:479:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::complex<_Tp>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/ccomplex:38:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:52, from biperm.cpp:1: /usr/include/c++/4.8/complex:484:5: note: template<class _Tp> constexpr bool std::operator!=(const _Tp&, const std::complex<_Tp>&) operator!=(const _Tp& __x, const complex<_Tp>& __y) ^ /usr/include/c++/4.8/complex:484:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: mismatched types 'const std::complex<_Tp>' and 'int' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/vector:64:0, from /usr/include/c++/4.8/bits/random.h:34, from /usr/include/c++/4.8/random:50, from /usr/include/c++/4.8/bits/stl_algo.h:65, from /usr/include/c++/4.8/algorithm:62, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from biperm.cpp:1: /usr/include/c++/4.8/bits/stl_vector.h:1428:5: note: template<class _Tp, class _Alloc> bool std::operator!=(const std::vector<_Tp, _Alloc>&, const std::vector<_Tp, _Alloc>&) operator!=(const vector<_Tp, _Alloc>& __x, const vector<_Tp, _Alloc>& __y) ^ /usr/include/c++/4.8/bits/stl_vector.h:1428:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: mismatched types 'const std::vector<_Tp, _Alloc>' and 'int' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/random:50:0, from /usr/include/c++/4.8/bits/stl_algo.h:65, from /usr/include/c++/4.8/algorithm:62, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from biperm.cpp:1: /usr/include/c++/4.8/bits/random.h:409:5: note: template<class _UIntType, _UIntType __a, _UIntType __c, _UIntType __m> bool std::operator!=(const std::linear_congruential_engine<_UIntType, __a, __c, __m>&, const std::linear_congruential_engine<_UIntType, __a, __c, __m>&) operator!=(const std::linear_congruential_engine<_UIntType, __a, ^ /usr/include/c++/4.8/bits/random.h:409:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::linear_congruential_engine<_UIntType, __a, __c, __m>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/random:50:0, from /usr/include/c++/4.8/bits/stl_algo.h:65, from /usr/include/c++/4.8/algorithm:62, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from biperm.cpp:1: /usr/include/c++/4.8/bits/random.h:641:5: note: template<class _UIntType, unsigned int __w, unsigned int __n, unsigned int __m, unsigned int __r, _UIntType __a, unsigned int __u, _UIntType __d, unsigned int __s, _UIntType __b, unsigned int __t, _UIntType __c, unsigned int __l, _UIntType __f> bool std::operator!=(const std::mersenne_twister_engine<_UIntType, __w, __n, __m, __r, __a, __u, __d, __s, __b, __t, __c, __l, __f>&, const std::mersenne_twister_engine<_UIntType, __w, __n, __m, __r, __a, __u, __d, __s, __b, __t, __c, __l, __f>&) operator!=(const std::mersenne_twister_engine<_UIntType, __w, __n, __m, ^ /usr/include/c++/4.8/bits/random.h:641:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::mersenne_twister_engine<_UIntType, __w, __n, __m, __r, __a, __u, __d, __s, __b, __t, __c, __l, __f>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/random:50:0, from /usr/include/c++/4.8/bits/stl_algo.h:65, from /usr/include/c++/4.8/algorithm:62, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from biperm.cpp:1: /usr/include/c++/4.8/bits/random.h:840:5: note: template<class _UIntType, unsigned int __w, unsigned int __s, unsigned int __r> bool std::operator!=(const std::subtract_with_carry_engine<_UIntType, __w, __s, __r>&, const std::subtract_with_carry_engine<_UIntType, __w, __s, __r>&) operator!=(const std::subtract_with_carry_engine<_UIntType, __w, ^ /usr/include/c++/4.8/bits/random.h:840:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::subtract_with_carry_engine<_UIntType, __w, __s, __r>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/random:50:0, from /usr/include/c++/4.8/bits/stl_algo.h:65, from /usr/include/c++/4.8/algorithm:62, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from biperm.cpp:1: /usr/include/c++/4.8/bits/random.h:1062:5: note: template<class _RandomNumberEngine, unsigned int __p, unsigned int __r> bool std::operator!=(const std::discard_block_engine<_RandomNumberEngine, __p, __r>&, const std::discard_block_engine<_RandomNumberEngine, __p, __r>&) operator!=(const std::discard_block_engine<_RandomNumberEngine, __p, ^ /usr/include/c++/4.8/bits/random.h:1062:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::discard_block_engine<_RandomNumberEngine, __p, __r>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/random:50:0, from /usr/include/c++/4.8/bits/stl_algo.h:65, from /usr/include/c++/4.8/algorithm:62, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from biperm.cpp:1: /usr/include/c++/4.8/bits/random.h:1258:5: note: template<class _RandomNumberEngine, unsigned int __w, class _UIntType> bool std::operator!=(const std::independent_bits_engine<_RandomNumberEngine, __w, _UIntType>&, const std::independent_bits_engine<_RandomNumberEngine, __w, _UIntType>&) operator!=(const std::independent_bits_engine<_RandomNumberEngine, __w, ^ /usr/include/c++/4.8/bits/random.h:1258:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::independent_bits_engine<_RandomNumberEngine, __w, _UIntType>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/random:50:0, from /usr/include/c++/4.8/bits/stl_algo.h:65, from /usr/include/c++/4.8/algorithm:62, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from biperm.cpp:1: /usr/include/c++/4.8/bits/random.h:1510:5: note: template<class _RandomNumberEngine, unsigned int __k> bool std::operator!=(const std::shuffle_order_engine<_RandomNumberEngine, __k>&, const std::shuffle_order_engine<_RandomNumberEngine, __k>&) operator!=(const std::shuffle_order_engine<_RandomNumberEngine, ^ /usr/include/c++/4.8/bits/random.h:1510:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::shuffle_order_engine<_RandomNumberEngine, __k>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/random:50:0, from /usr/include/c++/4.8/bits/stl_algo.h:65, from /usr/include/c++/4.8/algorithm:62, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from biperm.cpp:1: /usr/include/c++/4.8/bits/random.h:1825:5: note: template<class _IntType> bool std::operator!=(const std::uniform_int_distribution<_IntType>&, const std::uniform_int_distribution<_IntType>&) operator!=(const std::uniform_int_distribution<_IntType>& __d1, ^ /usr/include/c++/4.8/bits/random.h:1825:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::uniform_int_distribution<_IntType>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/random:50:0, from /usr/include/c++/4.8/bits/stl_algo.h:65, from /usr/include/c++/4.8/algorithm:62, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from biperm.cpp:1: /usr/include/c++/4.8/bits/random.h:2034:5: note: template<class _IntType> bool std::operator!=(const std::uniform_real_distribution<_IntType>&, const std::uniform_real_distribution<_IntType>&) operator!=(const std::uniform_real_distribution<_IntType>& __d1, ^ /usr/include/c++/4.8/bits/random.h:2034:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::uniform_real_distribution<_IntType>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/random:50:0, from /usr/include/c++/4.8/bits/stl_algo.h:65, from /usr/include/c++/4.8/algorithm:62, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from biperm.cpp:1: /usr/include/c++/4.8/bits/random.h:2283:5: note: template<class _RealType> bool std::operator!=(const std::normal_distribution<_RealType>&, const std::normal_distribution<_RealType>&) operator!=(const std::normal_distribution<_RealType>& __d1, ^ /usr/include/c++/4.8/bits/random.h:2283:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::normal_distribution<_RealType>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/random:50:0, from /usr/include/c++/4.8/bits/stl_algo.h:65, from /usr/include/c++/4.8/algorithm:62, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from biperm.cpp:1: /usr/include/c++/4.8/bits/random.h:2487:5: note: template<class _RealType> bool std::operator!=(const std::lognormal_distribution<_RealType>&, const std::lognormal_distribution<_RealType>&) operator!=(const std::lognormal_distribution<_RealType>& __d1, ^ /usr/include/c++/4.8/bits/random.h:2487:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::lognormal_distribution<_RealType>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/random:50:0, from /usr/include/c++/4.8/bits/stl_algo.h:65, from /usr/include/c++/4.8/algorithm:62, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from biperm.cpp:1: /usr/include/c++/4.8/bits/random.h:2707:6: note: template<class _RealType> bool std::operator!=(const std::gamma_distribution<_RealType>&, const std::gamma_distribution<_RealType>&) operator!=(const std::gamma_distribution<_RealType>& __d1, ^ /usr/include/c++/4.8/bits/random.h:2707:6: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::gamma_distribution<_RealType>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/random:50:0, from /usr/include/c++/4.8/bits/stl_algo.h:65, from /usr/include/c++/4.8/algorithm:62, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from biperm.cpp:1: /usr/include/c++/4.8/bits/random.h:2917:5: note: template<class _RealType> bool std::operator!=(const std::chi_squared_distribution<_RealType>&, const std::chi_squared_distribution<_RealType>&) operator!=(const std::chi_squared_distribution<_RealType>& __d1, ^ /usr/include/c++/4.8/bits/random.h:2917:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::chi_squared_distribution<_RealType>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/random:50:0, from /usr/include/c++/4.8/bits/stl_algo.h:65, from /usr/include/c++/4.8/algorithm:62, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from biperm.cpp:1: /usr/include/c++/4.8/bits/random.h:3084:5: note: template<class _RealType> bool std::operator!=(const std::cauchy_distribution<_RealType>&, const std::cauchy_distribution<_RealType>&) operator!=(const std::cauchy_distribution<_RealType>& __d1, ^ /usr/include/c++/4.8/bits/random.h:3084:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::cauchy_distribution<_RealType>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/random:50:0, from /usr/include/c++/4.8/bits/stl_algo.h:65, from /usr/include/c++/4.8/algorithm:62, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from biperm.cpp:1: /usr/include/c++/4.8/bits/random.h:3340:5: note: template<class _RealType> bool std::operator!=(const std::fisher_f_distribution<_RealType>&, const std::fisher_f_distribution<_RealType>&) operator!=(const std::fisher_f_distribution<_RealType>& __d1, ^ /usr/include/c++/4.8/bits/random.h:3340:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::fisher_f_distribution<_RealType>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/random:50:0, from /usr/include/c++/4.8/bits/stl_algo.h:65, from /usr/include/c++/4.8/algorithm:62, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from biperm.cpp:1: /usr/include/c++/4.8/bits/random.h:3553:5: note: template<class _RealType> bool std::operator!=(const std::student_t_distribution<_RealType>&, const std::student_t_distribution<_RealType>&) operator!=(const std::student_t_distribution<_RealType>& __d1, ^ /usr/include/c++/4.8/bits/random.h:3553:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::student_t_distribution<_RealType>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/random:50:0, from /usr/include/c++/4.8/bits/stl_algo.h:65, from /usr/include/c++/4.8/algorithm:62, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from biperm.cpp:1: /usr/include/c++/4.8/bits/random.h:3729:3: note: bool std::operator!=(const std::bernoulli_distribution&, const std::bernoulli_distribution&) operator!=(const std::bernoulli_distribution& __d1, ^ /usr/include/c++/4.8/bits/random.h:3729:3: note: no known conversion for argument 1 from 'std::vector<std::pair<int, int> >' to 'const std::bernoulli_distribution&' /usr/include/c++/4.8/bits/random.h:3995:5: note: template<class _IntType> bool std::operator!=(const std::binomial_distribution<_IntType>&, const std::binomial_distribution<_IntType>&) operator!=(const std::binomial_distribution<_IntType>& __d1, ^ /usr/include/c++/4.8/bits/random.h:3995:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::binomial_distribution<_IntType>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/random:50:0, from /usr/include/c++/4.8/bits/stl_algo.h:65, from /usr/include/c++/4.8/algorithm:62, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from biperm.cpp:1: /usr/include/c++/4.8/bits/random.h:4164:5: note: template<class _IntType> bool std::operator!=(const std::geometric_distribution<_IntType>&, const std::geometric_distribution<_IntType>&) operator!=(const std::geometric_distribution<_IntType>& __d1, ^ /usr/include/c++/4.8/bits/random.h:4164:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::geometric_distribution<_IntType>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/random:50:0, from /usr/include/c++/4.8/bits/stl_algo.h:65, from /usr/include/c++/4.8/algorithm:62, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from biperm.cpp:1: /usr/include/c++/4.8/bits/random.h:4409:5: note: template<class _IntType> bool std::operator!=(const std::negative_binomial_distribution<_IntType>&, const std::negative_binomial_distribution<_IntType>&) operator!=(const std::negative_binomial_distribution<_IntType>& __d1, ^ /usr/include/c++/4.8/bits/random.h:4409:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::negative_binomial_distribution<_IntType>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/random:50:0, from /usr/include/c++/4.8/bits/stl_algo.h:65, from /usr/include/c++/4.8/algorithm:62, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from biperm.cpp:1: /usr/include/c++/4.8/bits/random.h:4625:5: note: template<class _IntType> bool std::operator!=(const std::poisson_distribution<_IntType>&, const std::poisson_distribution<_IntType>&) operator!=(const std::poisson_distribution<_IntType>& __d1, ^ /usr/include/c++/4.8/bits/random.h:4625:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::poisson_distribution<_IntType>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/random:50:0, from /usr/include/c++/4.8/bits/stl_algo.h:65, from /usr/include/c++/4.8/algorithm:62, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from biperm.cpp:1: /usr/include/c++/4.8/bits/random.h:4803:5: note: template<class _RealType> bool std::operator!=(const std::exponential_distribution<_RealType>&, const std::exponential_distribution<_RealType>&) operator!=(const std::exponential_distribution<_RealType>& __d1, ^ /usr/include/c++/4.8/bits/random.h:4803:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::exponential_distribution<_RealType>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/random:50:0, from /usr/include/c++/4.8/bits/stl_algo.h:65, from /usr/include/c++/4.8/algorithm:62, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from biperm.cpp:1: /usr/include/c++/4.8/bits/random.h:5006:5: note: template<class _RealType> bool std::operator!=(const std::weibull_distribution<_RealType>&, const std::weibull_distribution<_RealType>&) operator!=(const std::weibull_distribution<_RealType>& __d1, ^ /usr/include/c++/4.8/bits/random.h:5006:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::weibull_distribution<_RealType>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/random:50:0, from /usr/include/c++/4.8/bits/stl_algo.h:65, from /usr/include/c++/4.8/algorithm:62, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from biperm.cpp:1: /usr/include/c++/4.8/bits/random.h:5209:5: note: template<class _RealType> bool std::operator!=(const std::extreme_value_distribution<_RealType>&, const std::extreme_value_distribution<_RealType>&) operator!=(const std::extreme_value_distribution<_RealType>& __d1, ^ /usr/include/c++/4.8/bits/random.h:5209:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::extreme_value_distribution<_RealType>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/random:50:0, from /usr/include/c++/4.8/bits/stl_algo.h:65, from /usr/include/c++/4.8/algorithm:62, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from biperm.cpp:1: /usr/include/c++/4.8/bits/random.h:5469:5: note: template<class _IntType> bool std::operator!=(const std::discrete_distribution<_IntType>&, const std::discrete_distribution<_IntType>&) operator!=(const std::discrete_distribution<_IntType>& __d1, ^ /usr/include/c++/4.8/bits/random.h:5469:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::discrete_distribution<_IntType>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/random:50:0, from /usr/include/c++/4.8/bits/stl_algo.h:65, from /usr/include/c++/4.8/algorithm:62, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from biperm.cpp:1: /usr/include/c++/4.8/bits/random.h:5736:5: note: template<class _RealType> bool std::operator!=(const std::piecewise_constant_distribution<_RealType>&, const std::piecewise_constant_distribution<_RealType>&) operator!=(const std::piecewise_constant_distribution<_RealType>& __d1, ^ /usr/include/c++/4.8/bits/random.h:5736:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::piecewise_constant_distribution<_RealType>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/random:50:0, from /usr/include/c++/4.8/bits/stl_algo.h:65, from /usr/include/c++/4.8/algorithm:62, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from biperm.cpp:1: /usr/include/c++/4.8/bits/random.h:6006:5: note: template<class _RealType> bool std::operator!=(const std::piecewise_linear_distribution<_RealType>&, const std::piecewise_linear_distribution<_RealType>&) operator!=(const std::piecewise_linear_distribution<_RealType>& __d1, ^ /usr/include/c++/4.8/bits/random.h:6006:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::piecewise_linear_distribution<_RealType>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/tuple:39:0, from /usr/include/c++/4.8/functional:55, from /usr/include/c++/4.8/bits/stl_algo.h:66, from /usr/include/c++/4.8/algorithm:62, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from biperm.cpp:1: /usr/include/c++/4.8/array:233:5: note: template<class _Tp, unsigned int _Nm> bool std::operator!=(const std::array<_Tp, _Nm>&, const std::array<_Tp, _Nm>&) operator!=(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two) ^ /usr/include/c++/4.8/array:233:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::array<_Tp, _Nm>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/functional:55:0, from /usr/include/c++/4.8/bits/stl_algo.h:66, from /usr/include/c++/4.8/algorithm:62, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from biperm.cpp:1: /usr/include/c++/4.8/tuple:835:5: note: template<class ... _TElements, class ... _UElements> constexpr bool std::operator!=(const std::tuple<_Elements ...>&, const std::tuple<_Elements ...>&) operator!=(const tuple<_TElements...>& __t, ^ /usr/include/c++/4.8/tuple:835:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::tuple<_Elements ...>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/bits/stl_algo.h:66:0, from /usr/include/c++/4.8/algorithm:62, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from biperm.cpp:1: /usr/include/c++/4.8/functional:2555:5: note: template<class _Res, class ... _Args> bool std::operator!=(const std::function<_Res(_ArgTypes ...)>&, std::nullptr_t) operator!=(const function<_Res(_Args...)>& __f, nullptr_t) noexcept ^ /usr/include/c++/4.8/functional:2555:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::function<_Res(_ArgTypes ...)>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/bits/stl_algo.h:66:0, from /usr/include/c++/4.8/algorithm:62, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from biperm.cpp:1: /usr/include/c++/4.8/functional:2561:5: note: template<class _Res, class ... _Args> bool std::operator!=(std::nullptr_t, const std::function<_Res(_ArgTypes ...)>&) operator!=(nullptr_t, const function<_Res(_Args...)>& __f) noexcept ^ /usr/include/c++/4.8/functional:2561:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: cannot convert 'e' (type 'std::vector<std::pair<int, int> >') to type 'std::nullptr_t' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/deque:64:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:67, from biperm.cpp:1: /usr/include/c++/4.8/bits/stl_deque.h:260:5: note: template<class _Tp, class _Ref, class _Ptr> bool std::operator!=(const std::_Deque_iterator<_Tp, _Ref, _Ptr>&, const std::_Deque_iterator<_Tp, _Ref, _Ptr>&) operator!=(const _Deque_iterator<_Tp, _Ref, _Ptr>& __x, ^ /usr/include/c++/4.8/bits/stl_deque.h:260:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::_Deque_iterator<_Tp, _Ref, _Ptr>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/deque:64:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:67, from biperm.cpp:1: /usr/include/c++/4.8/bits/stl_deque.h:267:5: note: template<class _Tp, class _RefL, class _PtrL, class _RefR, class _PtrR> bool std::operator!=(const std::_Deque_iterator<_Tp, _Ref, _Ptr>&, const std::_Deque_iterator<_Tp, _RefR, _PtrR>&) operator!=(const _Deque_iterator<_Tp, _RefL, _PtrL>& __x, ^ /usr/include/c++/4.8/bits/stl_deque.h:267:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::_Deque_iterator<_Tp, _Ref, _Ptr>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/deque:64:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:67, from biperm.cpp:1: /usr/include/c++/4.8/bits/stl_deque.h:1983:5: note: template<class _Tp, class _Alloc> bool std::operator!=(const std::deque<_Tp, _Alloc>&, const std::deque<_Tp, _Alloc>&) operator!=(const deque<_Tp, _Alloc>& __x, ^ /usr/include/c++/4.8/bits/stl_deque.h:1983:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::deque<_Tp, _Alloc>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/iterator:66:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:76, from biperm.cpp:1: /usr/include/c++/4.8/bits/stream_iterator.h:137:5: note: template<class _Tp, class _CharT, class _Traits, class _Dist> bool std::operator!=(const std::istream_iterator<_Tp, _CharT, _Traits, _Dist>&, const std::istream_iterator<_Tp, _CharT, _Traits, _Dist>&) operator!=(const istream_iterator<_Tp, _CharT, _Traits, _Dist>& __x, ^ /usr/include/c++/4.8/bits/stream_iterator.h:137:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::istream_iterator<_Tp, _CharT, _Traits, _Dist>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/list:63:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:78, from biperm.cpp:1: /usr/include/c++/4.8/bits/stl_list.h:282:5: note: template<class _Val> bool std::operator!=(const std::_List_iterator<_Tp>&, const std::_List_const_iterator<_Val>&) operator!=(const _List_iterator<_Val>& __x, ^ /usr/include/c++/4.8/bits/stl_list.h:282:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::_List_iterator<_Tp>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/list:63:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:78, from biperm.cpp:1: /usr/include/c++/4.8/bits/stl_list.h:1638:5: note: template<class _Tp, class _Alloc> bool std::operator!=(const std::list<_Tp, _Alloc>&, const std::list<_Tp, _Alloc>&) operator!=(const list<_Tp, _Alloc>& __x, const list<_Tp, _Alloc>& __y) ^ /usr/include/c++/4.8/bits/stl_list.h:1638:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::list<_Tp, _Alloc>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/map:60:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:80, from biperm.cpp:1: /usr/include/c++/4.8/bits/stl_tree.h:316:5: note: template<class _Val> bool std::operator!=(const std::_Rb_tree_iterator<_Tp>&, const std::_Rb_tree_const_iterator<_Val>&) operator!=(const _Rb_tree_iterator<_Val>& __x, ^ /usr/include/c++/4.8/bits/stl_tree.h:316:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::_Rb_tree_iterator<_Tp>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/map:60:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:80, from biperm.cpp:1: /usr/include/c++/4.8/bits/stl_tree.h:927:5: note: template<class _Key, class _Val, class _KeyOfValue, class _Compare, class _Alloc> bool std::operator!=(const std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>&, const std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>&) operator!=(const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __x, ^ /usr/include/c++/4.8/bits/stl_tree.h:927:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/map:61:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:80, from biperm.cpp:1: /usr/include/c++/4.8/bits/stl_map.h:986:5: note: template<class _Key, class _Tp, class _Compare, class _Alloc> bool std::operator!=(const std::map<_Key, _Tp, _Compare, _Alloc>&, const std::map<_Key, _Tp, _Compare, _Alloc>&) operator!=(const map<_Key, _Tp, _Compare, _Alloc>& __x, ^ /usr/include/c++/4.8/bits/stl_map.h:986:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::map<_Key, _Tp, _Compare, _Alloc>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/map:62:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:80, from biperm.cpp:1: /usr/include/c++/4.8/bits/stl_multimap.h:888:5: note: template<class _Key, class _Tp, class _Compare, class _Alloc> bool std::operator!=(const std::multimap<_Key, _Tp, _Compare, _Alloc>&, const std::multimap<_Key, _Tp, _Compare, _Alloc>&) operator!=(const multimap<_Key, _Tp, _Compare, _Alloc>& __x, ^ /usr/include/c++/4.8/bits/stl_multimap.h:888:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::multimap<_Key, _Tp, _Compare, _Alloc>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/memory:81:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:81, from biperm.cpp:1: /usr/include/c++/4.8/bits/unique_ptr.h:506:5: note: template<class _Tp, class _Dp, class _Up, class _Ep> bool std::operator!=(const std::unique_ptr<_Tp, _Dp>&, const std::unique_ptr<_Up, _Ep>&) operator!=(const unique_ptr<_Tp, _Dp>& __x, ^ /usr/include/c++/4.8/bits/unique_ptr.h:506:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::unique_ptr<_Tp, _Dp>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/memory:81:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:81, from biperm.cpp:1: /usr/include/c++/4.8/bits/unique_ptr.h:512:5: note: template<class _Tp, class _Dp> bool std::operator!=(const std::unique_ptr<_Tp, _Dp>&, std::nullptr_t) operator!=(const unique_ptr<_Tp, _Dp>& __x, nullptr_t) noexcept ^ /usr/include/c++/4.8/bits/unique_ptr.h:512:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::unique_ptr<_Tp, _Dp>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/memory:81:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:81, from biperm.cpp:1: /usr/include/c++/4.8/bits/unique_ptr.h:517:5: note: template<class _Tp, class _Dp> bool std::operator!=(std::nullptr_t, const std::unique_ptr<_Tp, _Dp>&) operator!=(nullptr_t, const unique_ptr<_Tp, _Dp>& __x) noexcept ^ /usr/include/c++/4.8/bits/unique_ptr.h:517:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: cannot convert 'e' (type 'std::vector<std::pair<int, int> >') to type 'std::nullptr_t' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/bits/shared_ptr.h:52:0, from /usr/include/c++/4.8/memory:82, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:81, from biperm.cpp:1: /usr/include/c++/4.8/bits/shared_ptr_base.h:1045:5: note: template<class _Tp1, class _Tp2, __gnu_cxx::_Lock_policy _Lp> bool std::operator!=(const std::__shared_ptr<_Tp1, _Lp>&, const std::__shared_ptr<_Tp2, _Lp>&) operator!=(const __shared_ptr<_Tp1, _Lp>& __a, ^ /usr/include/c++/4.8/bits/shared_ptr_base.h:1045:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::__shared_ptr<_Tp1, _Lp>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/bits/shared_ptr.h:52:0, from /usr/include/c++/4.8/memory:82, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:81, from biperm.cpp:1: /usr/include/c++/4.8/bits/shared_ptr_base.h:1051:5: note: template<class _Tp, __gnu_cxx::_Lock_policy _Lp> bool std::operator!=(const std::__shared_ptr<_Tp, _Lp>&, std::nullptr_t) operator!=(const __shared_ptr<_Tp, _Lp>& __a, nullptr_t) noexcept ^ /usr/include/c++/4.8/bits/shared_ptr_base.h:1051:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::__shared_ptr<_Tp, _Lp>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/bits/shared_ptr.h:52:0, from /usr/include/c++/4.8/memory:82, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:81, from biperm.cpp:1: /usr/include/c++/4.8/bits/shared_ptr_base.h:1056:5: note: template<class _Tp, __gnu_cxx::_Lock_policy _Lp> bool std::operator!=(std::nullptr_t, const std::__shared_ptr<_Tp, _Lp>&) operator!=(nullptr_t, const __shared_ptr<_Tp, _Lp>& __a) noexcept ^ /usr/include/c++/4.8/bits/shared_ptr_base.h:1056:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: cannot convert 'e' (type 'std::vector<std::pair<int, int> >') to type 'std::nullptr_t' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/memory:82:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:81, from biperm.cpp:1: /usr/include/c++/4.8/bits/shared_ptr.h:343:5: note: template<class _Tp1, class _Tp2> bool std::operator!=(const std::shared_ptr<_Tp1>&, const std::shared_ptr<_Tp2>&) operator!=(const shared_ptr<_Tp1>& __a, ^ /usr/include/c++/4.8/bits/shared_ptr.h:343:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::shared_ptr<_Tp1>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/memory:82:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:81, from biperm.cpp:1: /usr/include/c++/4.8/bits/shared_ptr.h:349:5: note: template<class _Tp> bool std::operator!=(const std::shared_ptr<_Tp1>&, std::nullptr_t) operator!=(const shared_ptr<_Tp>& __a, nullptr_t) noexcept ^ /usr/include/c++/4.8/bits/shared_ptr.h:349:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::shared_ptr<_Tp1>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/memory:82:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:81, from biperm.cpp:1: /usr/include/c++/4.8/bits/shared_ptr.h:354:5: note: template<class _Tp> bool std::operator!=(std::nullptr_t, const std::shared_ptr<_Tp1>&) operator!=(nullptr_t, const shared_ptr<_Tp>& __a) noexcept ^ /usr/include/c++/4.8/bits/shared_ptr.h:354:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: cannot convert 'e' (type 'std::vector<std::pair<int, int> >') to type 'std::nullptr_t' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/queue:64:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:85, from biperm.cpp:1: /usr/include/c++/4.8/bits/stl_queue.h:292:5: note: template<class _Tp, class _Seq> bool std::operator!=(const std::queue<_Tp, _Seq>&, const std::queue<_Tp, _Seq>&) operator!=(const queue<_Tp, _Seq>& __x, const queue<_Tp, _Seq>& __y) ^ /usr/include/c++/4.8/bits/stl_queue.h:292:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::queue<_Tp, _Seq>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/set:61:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:86, from biperm.cpp:1: /usr/include/c++/4.8/bits/stl_set.h:778:5: note: template<class _Key, class _Compare, class _Alloc> bool std::operator!=(const std::set<_Key, _Compare, _Alloc>&, const std::set<_Key, _Compare, _Alloc>&) operator!=(const set<_Key, _Compare, _Alloc>& __x, ^ /usr/include/c++/4.8/bits/stl_set.h:778:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::set<_Key, _Compare, _Alloc>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/set:62:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:86, from biperm.cpp:1: /usr/include/c++/4.8/bits/stl_multiset.h:763:5: note: template<class _Key, class _Compare, class _Alloc> bool std::operator!=(const std::multiset<_Key, _Compare, _Alloc>&, const std::multiset<_Key, _Compare, _Alloc>&) operator!=(const multiset<_Key, _Compare, _Alloc>& __x, ^ /usr/include/c++/4.8/bits/stl_multiset.h:763:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::multiset<_Key, _Compare, _Alloc>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/stack:61:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:88, from biperm.cpp:1: /usr/include/c++/4.8/bits/stl_stack.h:267:5: note: template<class _Tp, class _Seq> bool std::operator!=(const std::stack<_Tp, _Seq>&, const std::stack<_Tp, _Seq>&) operator!=(const stack<_Tp, _Seq>& __x, const stack<_Tp, _Seq>& __y) ^ /usr/include/c++/4.8/bits/stl_stack.h:267:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::stack<_Tp, _Seq>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/valarray:587:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:94, from biperm.cpp:1: /usr/include/c++/4.8/bits/valarray_after.h:415:5: note: template<class _Dom1, class _Dom2> std::_Expr<std::_BinClos<std::__not_equal_to, std::_Expr, std::_Expr, _Dom1, _Dom2>, typename std::__fun<std::__not_equal_to, typename _Dom1::value_type>::result_type> std::operator!=(const std::_Expr<_Dom1, typename _Dom1::value_type>&, const std::_Expr<_Dom2, typename _Dom2::value_type>&) _DEFINE_EXPR_BINARY_OPERATOR(!=, __not_equal_to) ^ /usr/include/c++/4.8/bits/valarray_after.h:415:5: note: template argument deduction/substitution failed: biperm.cpp:29:23: note: 'std::vector<std::pair<int, int> >' is not derived from 'const std::_Expr<_Dom1, typename _Dom1::value_type>' } else if (e != p) { ^ In file included from /usr/include/c++/4.8/valarray:587:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:94, from biperm.cpp:1: /usr/include/c++/4.8/bits/valarray_after.h:415:5: note: template<class _Dom> std::_Expr<std::_BinClos<std::__not_equal_to, std::_Expr, std::_Constant, _Dom, typename _Dom::value_type>, typename std::__fun<std::__not_equal_to, typename _Dom1::v
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Biperm face parte din prima categorie. Soluția propusă de tine va fi evaluată astfel:
Suma punctajelor acordate pe testele utilizate pentru verificare este 100. Astfel, soluția ta poate obține cel mult 100 de puncte, caz în care se poate considera corectă.