Detalii evaluare #56976577

Rezumat problemă

traseu3

#2962

O suprafață de teren de formă dreptunghiulară este divizată în N fâșii orizontale și M fâșii verticale, de lățimi egale. Se formează astfel N x M zone de formă pătrată, cu latura egală cu o unitate. Astfel, suprafața este reprezentată sub forma unui tablou bidimensional cu N linii și M coloane, în care pentru fiecare zonă este memorat un număr ce reprezintă altitudinea zonei respective. Interesant este că în tablou apar toate valorile 1, 2, …, N•M. Suprafața este destinată turismului. Deoarece spre laturile de Est și Sud ale suprafeței există peisaje de o frumusețe uimitoare, se dorește găsirea unor trasee turistice în care deplasarea să se realizeze cu pași de lungime unitară mergând doar spre Est și spre Sud. O comisie, care trebuie să rezolve această problemă, a stabilit că un traseu este atractiv dacă și numai dacă ultima poziție a traseului are altitudinea mai mare decât prima poziție a traseului. Un traseu poate începe, respectiv se poate încheia, în oricare dintre zonele terenului, cu respectarea condițiilor anterioare. Se cere să se determine numărul maxim Z de zone pe care le poate avea un traseu atractiv.

Detalii

Problema traseu3 Operații I/O traseu.in/traseu.out
Limita timp 1 secunde Limita memorie Total: 64 MB / Stivă 8 MB
Id soluție #56976577 Utilizator Morgoci Alexandru (Morgoci_Alex)
Fișier traseu3.cpp Dimensiune 1.10 KB
Data încărcării 12 Martie 2025, 10:26 Scor / rezultat Eroare de compilare

Evaluare

Mesaj compilare

traseu3.cpp: In function 'void checkDir(int&, std::vector<std::vector<int> >&, std::set<std::pair<int, int> >, int, int, int)':
traseu3.cpp:11:5: error: expected ';' before 'if'
     if (x>0 && path.count(make_pair(x-1,y)==0 && alt[y][x-1]>start)   {res++;checkDir(res,alt,x-1,y)};

     ^
traseu3.cpp:12:43: error: no match for 'operator==' (operand types are 'std::pair<int, int>' and 'int')
     if (y>0 && path.count(make_pair(x,y-1)==0 && alt[y-1][x]>start)   {res++;checkDir(res,alt,x,y-1)};

                                           ^
traseu3.cpp:12:43: 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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/postypes.h:216: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:216:5: note:   template argument deduction/substitution failed:
traseu3.cpp:12:45: note:   'std::pair<int, int>' is not derived from 'const std::fpos<_StateT>'
     if (y>0 && path.count(make_pair(x,y-1)==0 && alt[y-1][x]>start)   {res++;checkDir(res,alt,x,y-1)};

                                             ^
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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/stl_pair.h:214: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:214:5: note:   template argument deduction/substitution failed:
traseu3.cpp:12:45: note:   mismatched types 'const std::pair<_T1, _T2>' and 'int'
     if (y>0 && path.count(make_pair(x,y-1)==0 && alt[y-1][x]>start)   {res++;checkDir(res,alt,x,y-1)};

                                             ^
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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/stl_iterator.h:291: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:291:5: note:   template argument deduction/substitution failed:
traseu3.cpp:12:45: note:   'std::pair<int, int>' is not derived from 'const std::reverse_iterator<_Iterator>'
     if (y>0 && path.count(make_pair(x,y-1)==0 && alt[y-1][x]>start)   {res++;checkDir(res,alt,x,y-1)};

                                             ^
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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/stl_iterator.h:341: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:341:5: note:   template argument deduction/substitution failed:
traseu3.cpp:12:45: note:   'std::pair<int, int>' is not derived from 'const std::reverse_iterator<_Iterator>'
     if (y>0 && path.count(make_pair(x,y-1)==0 && alt[y-1][x]>start)   {res++;checkDir(res,alt,x,y-1)};

                                             ^
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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/stl_iterator.h:1031: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:1031:5: note:   template argument deduction/substitution failed:
traseu3.cpp:12:45: note:   'std::pair<int, int>' is not derived from 'const std::move_iterator<_Iterator>'
     if (y>0 && path.count(make_pair(x,y-1)==0 && alt[y-1][x]>start)   {res++;checkDir(res,alt,x,y-1)};

                                             ^
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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/stl_iterator.h:1037: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:1037:5: note:   template argument deduction/substitution failed:
traseu3.cpp:12:45: note:   'std::pair<int, int>' is not derived from 'const std::move_iterator<_Iterator>'
     if (y>0 && path.count(make_pair(x,y-1)==0 && alt[y-1][x]>start)   {res++;checkDir(res,alt,x,y-1)};

                                             ^
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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/allocator.h:128: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:128:5: note:   template argument deduction/substitution failed:
traseu3.cpp:12:45: note:   'std::pair<int, int>' is not derived from 'const std::allocator<_CharT>'
     if (y>0 && path.count(make_pair(x,y-1)==0 && alt[y-1][x]>start)   {res++;checkDir(res,alt,x,y-1)};

                                             ^
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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/allocator.h:133: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:133:5: note:   template argument deduction/substitution failed:
traseu3.cpp:12:45: note:   'std::pair<int, int>' is not derived from 'const std::allocator<_CharT>'
     if (y>0 && path.count(make_pair(x,y-1)==0 && alt[y-1][x]>start)   {res++;checkDir(res,alt,x,y-1)};

                                             ^
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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/basic_string.h:2486: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:2486:5: note:   template argument deduction/substitution failed:
traseu3.cpp:12:45: note:   'std::pair<int, int>' is not derived from 'const std::basic_string<_CharT, _Traits, _Alloc>'
     if (y>0 && path.count(make_pair(x,y-1)==0 && alt[y-1][x]>start)   {res++;checkDir(res,alt,x,y-1)};

                                             ^
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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/basic_string.h:2493:5: note: template<class _CharT> typename __gnu_cxx::__enable_if<std::__is_char<_Tp>::__value, bool>::__type std::operator==(const std::basic_string<_CharT>&, const std::basic_string<_CharT>&)
     operator==(const basic_string<_CharT>& __lhs,
     ^
/usr/include/c++/4.8/bits/basic_string.h:2493:5: note:   template argument deduction/substitution failed:
traseu3.cpp:12:45: note:   'std::pair<int, int>' is not derived from 'const std::basic_string<_CharT>'
     if (y>0 && path.count(make_pair(x,y-1)==0 && alt[y-1][x]>start)   {res++;checkDir(res,alt,x,y-1)};

                                             ^
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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/basic_string.h:2507: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:2507:5: note:   template argument deduction/substitution failed:
traseu3.cpp:12:45: note:   mismatched types 'const _CharT*' and 'std::pair<int, int>'
     if (y>0 && path.count(make_pair(x,y-1)==0 && alt[y-1][x]>start)   {res++;checkDir(res,alt,x,y-1)};

                                             ^
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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/basic_string.h:2519: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:2519:5: note:   template argument deduction/substitution failed:
traseu3.cpp:12:45: note:   'std::pair<int, int>' is not derived from 'const std::basic_string<_CharT, _Traits, _Alloc>'
     if (y>0 && path.count(make_pair(x,y-1)==0 && alt[y-1][x]>start)   {res++;checkDir(res,alt,x,y-1)};

                                             ^
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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/streambuf_iterator.h:204: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:204:5: note:   template argument deduction/substitution failed:
traseu3.cpp:12:45: note:   'std::pair<int, int>' is not derived from 'const std::istreambuf_iterator<_CharT, _Traits>'
     if (y>0 && path.count(make_pair(x,y-1)==0 && alt[y-1][x]>start)   {res++;checkDir(res,alt,x,y-1)};

                                             ^
In file included from /usr/include/c++/4.8/vector:64:0,
                 from traseu3.cpp:3:
/usr/include/c++/4.8/bits/stl_vector.h:1404: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:1404:5: note:   template argument deduction/substitution failed:
traseu3.cpp:12:45: note:   'std::pair<int, int>' is not derived from 'const std::vector<_Tp, _Alloc>'
     if (y>0 && path.count(make_pair(x,y-1)==0 && alt[y-1][x]>start)   {res++;checkDir(res,alt,x,y-1)};

                                             ^
In file included from /usr/include/c++/4.8/set:60:0,
                 from traseu3.cpp:4:
/usr/include/c++/4.8/bits/stl_tree.h:310: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:310:5: note:   template argument deduction/substitution failed:
traseu3.cpp:12:45: note:   'std::pair<int, int>' is not derived from 'const std::_Rb_tree_iterator<_Tp>'
     if (y>0 && path.count(make_pair(x,y-1)==0 && alt[y-1][x]>start)   {res++;checkDir(res,alt,x,y-1)};

                                             ^
In file included from /usr/include/c++/4.8/set:60:0,
                 from traseu3.cpp:4:
/usr/include/c++/4.8/bits/stl_tree.h:907: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:907:5: note:   template argument deduction/substitution failed:
traseu3.cpp:12:45: note:   'std::pair<int, int>' is not derived from 'const std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>'
     if (y>0 && path.count(make_pair(x,y-1)==0 && alt[y-1][x]>start)   {res++;checkDir(res,alt,x,y-1)};

                                             ^
In file included from /usr/include/c++/4.8/set:61:0,
                 from traseu3.cpp:4:
/usr/include/c++/4.8/bits/stl_set.h:754: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:754:5: note:   template argument deduction/substitution failed:
traseu3.cpp:12:45: note:   'std::pair<int, int>' is not derived from 'const std::set<_Key, _Compare, _Alloc>'
     if (y>0 && path.count(make_pair(x,y-1)==0 && alt[y-1][x]>start)   {res++;checkDir(res,alt,x,y-1)};

                                             ^
In file included from /usr/include/c++/4.8/set:62:0,
                 from traseu3.cpp:4:
/usr/include/c++/4.8/bits/stl_multiset.h:739: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:739:5: note:   template argument deduction/substitution failed:
traseu3.cpp:12:45: note:   'std::pair<int, int>' is not derived from 'const std::multiset<_Key, _Compare, _Alloc>'
     if (y>0 && path.count(make_pair(x,y-1)==0 && alt[y-1][x]>start)   {res++;checkDir(res,alt,x,y-1)};

                                             ^
traseu3.cpp:12:71: error: expected ')' before '{' token
     if (y>0 && path.count(make_pair(x,y-1)==0 && alt[y-1][x]>start)   {res++;checkDir(res,alt,x,y-1)};

                                                                       ^
traseu3.cpp:13:45: error: no match for 'operator==' (operand types are 'std::pair<int, int>' and 'int')
     if (y<m-1 && path.count(make_pair(x,y+1)==0 && alt[y+1][x]>start) {res++;checkDir(res,alt,x,y+1)};

                                             ^
traseu3.cpp:13:45: 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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/postypes.h:216: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:216:5: note:   template argument deduction/substitution failed:
traseu3.cpp:13:47: note:   'std::pair<int, int>' is not derived from 'const std::fpos<_StateT>'
     if (y<m-1 && path.count(make_pair(x,y+1)==0 && alt[y+1][x]>start) {res++;checkDir(res,alt,x,y+1)};

                                               ^
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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/stl_pair.h:214: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:214:5: note:   template argument deduction/substitution failed:
traseu3.cpp:13:47: note:   mismatched types 'const std::pair<_T1, _T2>' and 'int'
     if (y<m-1 && path.count(make_pair(x,y+1)==0 && alt[y+1][x]>start) {res++;checkDir(res,alt,x,y+1)};

                                               ^
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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/stl_iterator.h:291: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:291:5: note:   template argument deduction/substitution failed:
traseu3.cpp:13:47: note:   'std::pair<int, int>' is not derived from 'const std::reverse_iterator<_Iterator>'
     if (y<m-1 && path.count(make_pair(x,y+1)==0 && alt[y+1][x]>start) {res++;checkDir(res,alt,x,y+1)};

                                               ^
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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/stl_iterator.h:341: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:341:5: note:   template argument deduction/substitution failed:
traseu3.cpp:13:47: note:   'std::pair<int, int>' is not derived from 'const std::reverse_iterator<_Iterator>'
     if (y<m-1 && path.count(make_pair(x,y+1)==0 && alt[y+1][x]>start) {res++;checkDir(res,alt,x,y+1)};

                                               ^
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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/stl_iterator.h:1031: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:1031:5: note:   template argument deduction/substitution failed:
traseu3.cpp:13:47: note:   'std::pair<int, int>' is not derived from 'const std::move_iterator<_Iterator>'
     if (y<m-1 && path.count(make_pair(x,y+1)==0 && alt[y+1][x]>start) {res++;checkDir(res,alt,x,y+1)};

                                               ^
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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/stl_iterator.h:1037: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:1037:5: note:   template argument deduction/substitution failed:
traseu3.cpp:13:47: note:   'std::pair<int, int>' is not derived from 'const std::move_iterator<_Iterator>'
     if (y<m-1 && path.count(make_pair(x,y+1)==0 && alt[y+1][x]>start) {res++;checkDir(res,alt,x,y+1)};

                                               ^
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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/allocator.h:128: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:128:5: note:   template argument deduction/substitution failed:
traseu3.cpp:13:47: note:   'std::pair<int, int>' is not derived from 'const std::allocator<_CharT>'
     if (y<m-1 && path.count(make_pair(x,y+1)==0 && alt[y+1][x]>start) {res++;checkDir(res,alt,x,y+1)};

                                               ^
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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/allocator.h:133: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:133:5: note:   template argument deduction/substitution failed:
traseu3.cpp:13:47: note:   'std::pair<int, int>' is not derived from 'const std::allocator<_CharT>'
     if (y<m-1 && path.count(make_pair(x,y+1)==0 && alt[y+1][x]>start) {res++;checkDir(res,alt,x,y+1)};

                                               ^
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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/basic_string.h:2486: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:2486:5: note:   template argument deduction/substitution failed:
traseu3.cpp:13:47: note:   'std::pair<int, int>' is not derived from 'const std::basic_string<_CharT, _Traits, _Alloc>'
     if (y<m-1 && path.count(make_pair(x,y+1)==0 && alt[y+1][x]>start) {res++;checkDir(res,alt,x,y+1)};

                                               ^
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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/basic_string.h:2493:5: note: template<class _CharT> typename __gnu_cxx::__enable_if<std::__is_char<_Tp>::__value, bool>::__type std::operator==(const std::basic_string<_CharT>&, const std::basic_string<_CharT>&)
     operator==(const basic_string<_CharT>& __lhs,
     ^
/usr/include/c++/4.8/bits/basic_string.h:2493:5: note:   template argument deduction/substitution failed:
traseu3.cpp:13:47: note:   'std::pair<int, int>' is not derived from 'const std::basic_string<_CharT>'
     if (y<m-1 && path.count(make_pair(x,y+1)==0 && alt[y+1][x]>start) {res++;checkDir(res,alt,x,y+1)};

                                               ^
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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/basic_string.h:2507: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:2507:5: note:   template argument deduction/substitution failed:
traseu3.cpp:13:47: note:   mismatched types 'const _CharT*' and 'std::pair<int, int>'
     if (y<m-1 && path.count(make_pair(x,y+1)==0 && alt[y+1][x]>start) {res++;checkDir(res,alt,x,y+1)};

                                               ^
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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/basic_string.h:2519: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:2519:5: note:   template argument deduction/substitution failed:
traseu3.cpp:13:47: note:   'std::pair<int, int>' is not derived from 'const std::basic_string<_CharT, _Traits, _Alloc>'
     if (y<m-1 && path.count(make_pair(x,y+1)==0 && alt[y+1][x]>start) {res++;checkDir(res,alt,x,y+1)};

                                               ^
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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/streambuf_iterator.h:204: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:204:5: note:   template argument deduction/substitution failed:
traseu3.cpp:13:47: note:   'std::pair<int, int>' is not derived from 'const std::istreambuf_iterator<_CharT, _Traits>'
     if (y<m-1 && path.count(make_pair(x,y+1)==0 && alt[y+1][x]>start) {res++;checkDir(res,alt,x,y+1)};

                                               ^
In file included from /usr/include/c++/4.8/vector:64:0,
                 from traseu3.cpp:3:
/usr/include/c++/4.8/bits/stl_vector.h:1404: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:1404:5: note:   template argument deduction/substitution failed:
traseu3.cpp:13:47: note:   'std::pair<int, int>' is not derived from 'const std::vector<_Tp, _Alloc>'
     if (y<m-1 && path.count(make_pair(x,y+1)==0 && alt[y+1][x]>start) {res++;checkDir(res,alt,x,y+1)};

                                               ^
In file included from /usr/include/c++/4.8/set:60:0,
                 from traseu3.cpp:4:
/usr/include/c++/4.8/bits/stl_tree.h:310: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:310:5: note:   template argument deduction/substitution failed:
traseu3.cpp:13:47: note:   'std::pair<int, int>' is not derived from 'const std::_Rb_tree_iterator<_Tp>'
     if (y<m-1 && path.count(make_pair(x,y+1)==0 && alt[y+1][x]>start) {res++;checkDir(res,alt,x,y+1)};

                                               ^
In file included from /usr/include/c++/4.8/set:60:0,
                 from traseu3.cpp:4:
/usr/include/c++/4.8/bits/stl_tree.h:907: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:907:5: note:   template argument deduction/substitution failed:
traseu3.cpp:13:47: note:   'std::pair<int, int>' is not derived from 'const std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>'
     if (y<m-1 && path.count(make_pair(x,y+1)==0 && alt[y+1][x]>start) {res++;checkDir(res,alt,x,y+1)};

                                               ^
In file included from /usr/include/c++/4.8/set:61:0,
                 from traseu3.cpp:4:
/usr/include/c++/4.8/bits/stl_set.h:754: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:754:5: note:   template argument deduction/substitution failed:
traseu3.cpp:13:47: note:   'std::pair<int, int>' is not derived from 'const std::set<_Key, _Compare, _Alloc>'
     if (y<m-1 && path.count(make_pair(x,y+1)==0 && alt[y+1][x]>start) {res++;checkDir(res,alt,x,y+1)};

                                               ^
In file included from /usr/include/c++/4.8/set:62:0,
                 from traseu3.cpp:4:
/usr/include/c++/4.8/bits/stl_multiset.h:739: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:739:5: note:   template argument deduction/substitution failed:
traseu3.cpp:13:47: note:   'std::pair<int, int>' is not derived from 'const std::multiset<_Key, _Compare, _Alloc>'
     if (y<m-1 && path.count(make_pair(x,y+1)==0 && alt[y+1][x]>start) {res++;checkDir(res,alt,x,y+1)};

                                               ^
traseu3.cpp:13:71: error: expected ')' before '{' token
     if (y<m-1 && path.count(make_pair(x,y+1)==0 && alt[y+1][x]>start) {res++;checkDir(res,alt,x,y+1)};

                                                                       ^
traseu3.cpp:14:45: error: no match for 'operator==' (operand types are 'std::pair<int, int>' and 'int')
     if (x<n-1 && path.count(make_pair(x+1,y)==0 && alt[y][x+1]>start) {res++;checkDir(res,alt,x+1,y)};

                                             ^
traseu3.cpp:14:45: 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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/postypes.h:216: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:216:5: note:   template argument deduction/substitution failed:
traseu3.cpp:14:47: note:   'std::pair<int, int>' is not derived from 'const std::fpos<_StateT>'
     if (x<n-1 && path.count(make_pair(x+1,y)==0 && alt[y][x+1]>start) {res++;checkDir(res,alt,x+1,y)};

                                               ^
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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/stl_pair.h:214: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:214:5: note:   template argument deduction/substitution failed:
traseu3.cpp:14:47: note:   mismatched types 'const std::pair<_T1, _T2>' and 'int'
     if (x<n-1 && path.count(make_pair(x+1,y)==0 && alt[y][x+1]>start) {res++;checkDir(res,alt,x+1,y)};

                                               ^
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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/stl_iterator.h:291: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:291:5: note:   template argument deduction/substitution failed:
traseu3.cpp:14:47: note:   'std::pair<int, int>' is not derived from 'const std::reverse_iterator<_Iterator>'
     if (x<n-1 && path.count(make_pair(x+1,y)==0 && alt[y][x+1]>start) {res++;checkDir(res,alt,x+1,y)};

                                               ^
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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/stl_iterator.h:341: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:341:5: note:   template argument deduction/substitution failed:
traseu3.cpp:14:47: note:   'std::pair<int, int>' is not derived from 'const std::reverse_iterator<_Iterator>'
     if (x<n-1 && path.count(make_pair(x+1,y)==0 && alt[y][x+1]>start) {res++;checkDir(res,alt,x+1,y)};

                                               ^
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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/stl_iterator.h:1031: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:1031:5: note:   template argument deduction/substitution failed:
traseu3.cpp:14:47: note:   'std::pair<int, int>' is not derived from 'const std::move_iterator<_Iterator>'
     if (x<n-1 && path.count(make_pair(x+1,y)==0 && alt[y][x+1]>start) {res++;checkDir(res,alt,x+1,y)};

                                               ^
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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/stl_iterator.h:1037: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:1037:5: note:   template argument deduction/substitution failed:
traseu3.cpp:14:47: note:   'std::pair<int, int>' is not derived from 'const std::move_iterator<_Iterator>'
     if (x<n-1 && path.count(make_pair(x+1,y)==0 && alt[y][x+1]>start) {res++;checkDir(res,alt,x+1,y)};

                                               ^
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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/allocator.h:128: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:128:5: note:   template argument deduction/substitution failed:
traseu3.cpp:14:47: note:   'std::pair<int, int>' is not derived from 'const std::allocator<_CharT>'
     if (x<n-1 && path.count(make_pair(x+1,y)==0 && alt[y][x+1]>start) {res++;checkDir(res,alt,x+1,y)};

                                               ^
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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/allocator.h:133: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:133:5: note:   template argument deduction/substitution failed:
traseu3.cpp:14:47: note:   'std::pair<int, int>' is not derived from 'const std::allocator<_CharT>'
     if (x<n-1 && path.count(make_pair(x+1,y)==0 && alt[y][x+1]>start) {res++;checkDir(res,alt,x+1,y)};

                                               ^
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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/basic_string.h:2486: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:2486:5: note:   template argument deduction/substitution failed:
traseu3.cpp:14:47: note:   'std::pair<int, int>' is not derived from 'const std::basic_string<_CharT, _Traits, _Alloc>'
     if (x<n-1 && path.count(make_pair(x+1,y)==0 && alt[y][x+1]>start) {res++;checkDir(res,alt,x+1,y)};

                                               ^
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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/basic_string.h:2493:5: note: template<class _CharT> typename __gnu_cxx::__enable_if<std::__is_char<_Tp>::__value, bool>::__type std::operator==(const std::basic_string<_CharT>&, const std::basic_string<_CharT>&)
     operator==(const basic_string<_CharT>& __lhs,
     ^
/usr/include/c++/4.8/bits/basic_string.h:2493:5: note:   template argument deduction/substitution failed:
traseu3.cpp:14:47: note:   'std::pair<int, int>' is not derived from 'const std::basic_string<_CharT>'
     if (x<n-1 && path.count(make_pair(x+1,y)==0 && alt[y][x+1]>start) {res++;checkDir(res,alt,x+1,y)};

                                               ^
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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/basic_string.h:2507: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:2507:5: note:   template argument deduction/substitution failed:
traseu3.cpp:14:47: note:   mismatched types 'const _CharT*' and 'std::pair<int, int>'
     if (x<n-1 && path.count(make_pair(x+1,y)==0 && alt[y][x+1]>start) {res++;checkDir(res,alt,x+1,y)};

                                               ^
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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/basic_string.h:2519: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:2519:5: note:   template argument deduction/substitution failed:
traseu3.cpp:14:47: note:   'std::pair<int, int>' is not derived from 'const std::basic_string<_CharT, _Traits, _Alloc>'
     if (x<n-1 && path.count(make_pair(x+1,y)==0 && alt[y][x+1]>start) {res++;checkDir(res,alt,x+1,y)};

                                               ^
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/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from traseu3.cpp:1:
/usr/include/c++/4.8/bits/streambuf_iterator.h:204: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:204:5: note:   template argument deduction/substitution failed:
traseu3.cpp:14:47: note:   'std::pair<int, int>' is not derived from 'const std::istreambuf_iterator<_CharT, _Traits>'
     if (x<n-1 && path.count(make_pair(x+1,y)==0 && alt[y][x+1]>start) {res++;checkDir(res,alt,x+1,y)};

                                               ^
In file included from /usr/include/c++/4.8/vector:64:0,
                 from traseu3.cpp:3:
/usr/include/c++/4.8/bits/stl_vector.h:1404: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:1404:5: note:   template argument deduction/substitution failed:
traseu3.cpp:14:47: note:   'std::pair<int, int>' is not derived from 'const std::vector<_Tp, _Alloc>'
     if (x<n-1 && path.count(make_pair(x+1,y)==0 && alt[y][x+1]>start) {res++;checkDir(res,alt,x+1,y)};

                                               ^
In file included from /usr/include/c++/4.8/set:60:0,
                 from traseu3.cpp:4:
/usr/include/c++/4.8/bits/stl_tree.h:310: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:310:5: note:   template argument deduction/substitution failed:
traseu3.cpp:14:47: note:   'std::pair<int, int>' is not derived from 'const std::_Rb_tree_iterator<_Tp>'
     if (x<n-1 && path.count(make_pair(x+1,y)==0 && alt[y][x+1]>start) {res++;checkDir(res,alt,x+1,y)};

                                               ^
In file included from /usr/include/c++/4.8/set:60:0,
                 from traseu3.cpp:4:
/usr/include/c++/4.8/bits/stl_tree.h:907: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:907:5: note:   template argument deduction/substitution failed:
traseu3.cpp:14:47: note:   'std::pair<int, int>' is not derived from 'const std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>'
     if (x<n-1 && path.count(make_pair(x+1,y)==0 && alt[y][x+1]>start) {res++;checkDir(res,alt,x+1,y)};

                                               ^
In file included from /usr/include/c++/4.8/set:61:0,
                 from traseu3.cpp:4:
/usr/include/c++/4.8/bits/stl_set.h:754: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:754:5: note:   template argument deduction/substitution failed:
traseu3.cpp:14:47: note:   'std::pair<int, int>' is not derived from 'const std::set<_Key, _Compare, _Alloc>'
     if (x<n-1 && path.count(make_pair(x+1,y)==0 && alt[y][x+1]>start) {res++;checkDir(res,alt,x+1,y)};

                                               ^
In file included from /usr/include/c++/4.8/set:62:0,
                 from traseu3.cpp:4:
/usr/include/c++/4.8/bits/stl_multiset.h:739: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:739:5: note:   template argument deduction/substitution failed:
traseu3.cpp:14:47: note:   'std::pair<int, int>' is not derived from 'const std::multiset<_Key, _Compare, _Alloc>'
     if (x<n-1 && path.count(make_pair(x+1,y)==0 && alt[y][x+1]>start) {res++;checkDir(res,alt,x+1,y)};

                                               ^
traseu3.cpp:14:71: error: expected ')' before '{' token
     if (x<n-1 && path.count(make_pair(x+1,y)==0 && alt[y][x+1]>start) {res++;checkDir(res,alt,x+1,y)};

                                                                       ^

Cum funcționează evaluarea?

www.pbinfo.ro permite evaluarea a două tipuri de probleme:

  • probleme la care rezolvarea presupune scrierea unui program complet
  • probleme la care rezolvarea presupune scrierea unei secvențe de program - câteva instrucțiuni, o listă de declarații, una sau mai multe funcții, etc.

Problema traseu3 face parte din prima categorie. Soluția propusă de tine va fi evaluată astfel:

  • Programul sursă este compilat folosind compilatorul corespunzător. Dacă în urma compilării se obțin erori sau avertismente, acestea sunt afișate în această pagină.
  • Dacă programul a fost compilat, executabilul obținut va fi rulat, furnizându-i-se unul sau mai multe seturi de date de intrare, în concordanță cu restricțiile specifice problemei. Pentru fiecare set de date se obține un anumit punctaj, în raport cu corectitudinea soluției tale.

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ă.

Du-te sus!