#628
Cub1
Lui Andrei îi plac foarte mult jocurile de tip puzzle. De curând, el a descoperit un joc nou: un cub de dimensiune n
format din n•n•n
cuburi unitate sub forma unor cămăruţe. Cubul poate fi văzut ca o matrice tridimensionala ale cărei elemente sunt cămăruţele. Două cămăruţe se numesc adiacente dacă au o faţă comună. Astfel, o cămăruţă poate fi adiacentă cu maxim 6
cămăruţe. Scopul jocului este acela de a duce o bilă din cămăruţa de coordonate (1,1,1)
în cămăruţa de coordonate (n,n,n)
. Bila poate trece dintr-o cămăruţă în alta doar dacă acestea sunt adiacente, iar noua cămăruţă este accesibilă din cămăruţa curentă.
Cunoscând n
, dimensiunea cubului şi valorile asociate fiecărei cămăruţe, determinaţi:
a) cămăruța cu un număr maxim de cămăruțe ce pot fi accesate din ea;
b) un drum de lungime minimă de la cămăruţa (1,1,1)
la cămăruţa (n,n,n)
.
Grigore Moisil, 2014
Problema | Cub1 | Operații I/O |
cub1.in /cub1.out
|
---|---|---|---|
Limita timp | 2 secunde | Limita memorie |
Total: 32 MB
/
Stivă 16 MB
|
Id soluție | #4804162 | Utilizator | |
Fișier | cub1.cpp | Dimensiune | 2.99 KB |
Data încărcării | 26 Martie 2017, 17:07 | Scor / rezultat | Eroare de compilare |
cub1.cpp: In function 'void solve2()': cub1.cpp:118:21: error: no match for 'operator==' (operand types are 'asdf' and 'int') if(viz[x][y][z] == 0){ ^ cub1.cpp:118:21: 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/fstream:38, from cub1.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: cub1.cpp:118:24: note: 'asdf' is not derived from 'const std::fpos<_StateT>' if(viz[x][y][z] == 0){ ^ 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/fstream:38, from cub1.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: cub1.cpp:118:24: note: 'asdf' is not derived from 'const std::pair<_T1, _T2>' if(viz[x][y][z] == 0){ ^ 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/fstream:38, from cub1.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: cub1.cpp:118:24: note: 'asdf' is not derived from 'const std::reverse_iterator<_Iterator>' if(viz[x][y][z] == 0){ ^ 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/fstream:38, from cub1.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: cub1.cpp:118:24: note: 'asdf' is not derived from 'const std::reverse_iterator<_Iterator>' if(viz[x][y][z] == 0){ ^ 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/fstream:38, from cub1.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: cub1.cpp:118:24: note: 'asdf' is not derived from 'const std::move_iterator<_Iterator>' if(viz[x][y][z] == 0){ ^ 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/fstream:38, from cub1.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: cub1.cpp:118:24: note: 'asdf' is not derived from 'const std::move_iterator<_Iterator>' if(viz[x][y][z] == 0){ ^ 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/fstream:38, from cub1.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: cub1.cpp:118:24: note: 'asdf' is not derived from 'const std::allocator<_CharT>' if(viz[x][y][z] == 0){ ^ 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/fstream:38, from cub1.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: cub1.cpp:118:24: note: 'asdf' is not derived from 'const std::allocator<_CharT>' if(viz[x][y][z] == 0){ ^ 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/fstream:38, from cub1.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: cub1.cpp:118:24: note: 'asdf' is not derived from 'const std::basic_string<_CharT, _Traits, _Alloc>' if(viz[x][y][z] == 0){ ^ 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/fstream:38, from cub1.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: cub1.cpp:118:24: note: 'asdf' is not derived from 'const std::basic_string<_CharT>' if(viz[x][y][z] == 0){ ^ 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/fstream:38, from cub1.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: cub1.cpp:118:24: note: mismatched types 'const _CharT*' and 'asdf' if(viz[x][y][z] == 0){ ^ 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/fstream:38, from cub1.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: cub1.cpp:118:24: note: 'asdf' is not derived from 'const std::basic_string<_CharT, _Traits, _Alloc>' if(viz[x][y][z] == 0){ ^ 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/fstream:38, from cub1.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: cub1.cpp:118:24: note: 'asdf' is not derived from 'const std::istreambuf_iterator<_CharT, _Traits>' if(viz[x][y][z] == 0){ ^ In file included from /usr/include/c++/4.8/deque:64:0, from /usr/include/c++/4.8/queue:60, from cub1.cpp:2: /usr/include/c++/4.8/bits/stl_deque.h:247: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:247:5: note: template argument deduction/substitution failed: cub1.cpp:118:24: note: 'asdf' is not derived from 'const std::_Deque_iterator<_Tp, _Ref, _Ptr>' if(viz[x][y][z] == 0){ ^ In file included from /usr/include/c++/4.8/deque:64:0, from /usr/include/c++/4.8/queue:60, from cub1.cpp:2: /usr/include/c++/4.8/bits/stl_deque.h:254: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:254:5: note: template argument deduction/substitution failed: cub1.cpp:118:24: note: 'asdf' is not derived from 'const std::_Deque_iterator<_Tp, _Ref, _Ptr>' if(viz[x][y][z] == 0){ ^ In file included from /usr/include/c++/4.8/deque:64:0, from /usr/include/c++/4.8/queue:60, from cub1.cpp:2: /usr/include/c++/4.8/bits/stl_deque.h:1957: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:1957:5: note: template argument deduction/substitution failed: cub1.cpp:118:24: note: 'asdf' is not derived from 'const std::deque<_Tp, _Alloc>' if(viz[x][y][z] == 0){ ^ In file included from /usr/include/c++/4.8/vector:64:0, from /usr/include/c++/4.8/queue:61, from cub1.cpp:2: /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: cub1.cpp:118:24: note: 'asdf' is not derived from 'const std::vector<_Tp, _Alloc>' if(viz[x][y][z] == 0){ ^ In file included from /usr/include/c++/4.8/queue:64:0, from cub1.cpp:2: /usr/include/c++/4.8/bits/stl_queue.h:268: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:268:5: note: template argument deduction/substitution failed: cub1.cpp:118:24: note: 'asdf' is not derived from 'const std::queue<_Tp, _Seq>' if(viz[x][y][z] == 0){ ^ cub1.cpp:120:16: error: return-statement with a value, in function returning 'void' [-fpermissive] return 0; ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Cub1 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ă.