Detalii evaluare #49448205

Rezumat problemă

#4404 Conflicte C++

RAU-Gigel își amintește cu nostalgie de momentele sale de început într-ale programării, când mai făcea și stângăcii cum ar fi să declare un nume de tipul int…. așa a apărut următoarea problemă:

Să ne imaginăm harta politică a lumii viitorului, împărțită în țări ale căror nume sunt de fapt numere naturale nenule. Între ele există anumite relații: două țări sunt înfrățite dacă au în compunerea numelui lor aceleași cifre (nu contează numărul de apariții), în timp ce două țări se află în conflict dacă nu au nicio cifră comună în numele lor.

Interesat de politică, RAU-Gigel ar vrea să afle câteva informații: câte țări sunt izolate din punct de vedere politic, în sensul că nu sunt înfrățite cu nicio altă țară? Pentru fiecare țară dintr-o listă de țări preferate să se afle: cu câte țări este înfrățită și cu câte în conflict?

Ajutați-l pe RAU-Gigel să afle răspunsul la întrebările sale !

Detalii

Problema Conflicte Operații I/O conflicte.in/conflicte.out
Limita timp 0.1 secunde Limita memorie Total: 64 MB / Stivă 8 MB
Id soluție #49448205 Utilizator Papacioc Rares Ioan (Rares_Papacioc)
Fișier conflicte.cpp Dimensiune 1.74 KB
Data încărcării 02 Martie 2024, 10:41 Scor / rezultat Eroare de compilare

Evaluare


Mesaj compilare

In file included from /usr/include/c++/4.8/bits/hashtable.h:35:0,
                 from /usr/include/c++/4.8/unordered_map:47,
                 from conflicte.cpp:4:
/usr/include/c++/4.8/bits/hashtable_policy.h: In instantiation of 'struct std::__detail::_Hash_code_base<std::unordered_set<int>, std::pair<const std::unordered_set<int>, int>, std::__detail::_Select1st, std::hash<std::unordered_set<int> >, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, true>':
/usr/include/c++/4.8/bits/hashtable_policy.h:1402:10:   required from 'struct std::__detail::_Hashtable_base<std::unordered_set<int>, std::pair<const std::unordered_set<int>, int>, std::__detail::_Select1st, std::equal_to<std::unordered_set<int> >, std::hash<std::unordered_set<int> >, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Hashtable_traits<true, false, true> >'
/usr/include/c++/4.8/bits/hashtable.h:174:11:   required from 'class std::_Hashtable<std::unordered_set<int>, std::pair<const std::unordered_set<int>, int>, std::allocator<std::pair<const std::unordered_set<int>, int> >, std::__detail::_Select1st, std::equal_to<std::unordered_set<int> >, std::hash<std::unordered_set<int> >, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >'
/usr/include/c++/4.8/bits/unordered_map.h:100:18:   required from 'class std::unordered_map<std::unordered_set<int>, int>'
conflicte.cpp:11:50:   required from here
/usr/include/c++/4.8/bits/hashtable_policy.h:1070:12: error: invalid use of incomplete type 'struct std::hash<std::unordered_set<int> >'
     struct _Hash_code_base<_Key, _Value, _ExtractKey, _H1, _H2,
            ^
In file included from /usr/include/c++/4.8/bits/basic_string.h:3033:0,
                 from /usr/include/c++/4.8/string:52,
                 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 conflicte.cpp:1:
/usr/include/c++/4.8/bits/functional_hash.h:58:12: error: declaration of 'struct std::hash<std::unordered_set<int> >'
     struct hash;
            ^
In file included from /usr/include/c++/4.8/bits/hashtable.h:35:0,
                 from /usr/include/c++/4.8/unordered_map:47,
                 from conflicte.cpp:4:
/usr/include/c++/4.8/bits/hashtable_policy.h:1070:12: error: invalid use of incomplete type 'struct std::hash<std::unordered_set<int> >'
     struct _Hash_code_base<_Key, _Value, _ExtractKey, _H1, _H2,
            ^
In file included from /usr/include/c++/4.8/bits/basic_string.h:3033:0,
                 from /usr/include/c++/4.8/string:52,
                 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 conflicte.cpp:1:
/usr/include/c++/4.8/bits/functional_hash.h:58:12: error: declaration of 'struct std::hash<std::unordered_set<int> >'
     struct hash;
            ^
In file included from /usr/include/c++/4.8/bits/hashtable.h:35:0,
                 from /usr/include/c++/4.8/unordered_map:47,
                 from conflicte.cpp:4:
/usr/include/c++/4.8/bits/hashtable_policy.h:1082:53: error: invalid use of incomplete type 'struct std::hash<std::unordered_set<int> >'
       using __ebo_h1 = _Hashtable_ebo_helper<1, _H1>;
                                                     ^
In file included from /usr/include/c++/4.8/bits/basic_string.h:3033:0,
                 from /usr/include/c++/4.8/string:52,
                 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 conflicte.cpp:1:
/usr/include/c++/4.8/bits/functional_hash.h:58:12: error: declaration of 'struct std::hash<std::unordered_set<int> >'
     struct hash;
            ^
In file included from /usr/include/c++/4.8/bits/hashtable.h:35:0,
                 from /usr/include/c++/4.8/unordered_map:47,
                 from conflicte.cpp:4:
/usr/include/c++/4.8/bits/hashtable_policy.h:1082:53: error: invalid use of incomplete type 'struct std::hash<std::unordered_set<int> >'
       using __ebo_h1 = _Hashtable_ebo_helper<1, _H1>;
                                                     ^
In file included from /usr/include/c++/4.8/bits/basic_string.h:3033:0,
                 from /usr/include/c++/4.8/string:52,
                 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 conflicte.cpp:1:
/usr/include/c++/4.8/bits/functional_hash.h:58:12: error: declaration of 'struct std::hash<std::unordered_set<int> >'
     struct hash;
            ^
conflicte.cpp: In constructor 'std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::unordered_map(std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::size_type, const hasher&, const key_equal&, const allocator_type&) [with _Key = std::unordered_set<int>; _Tp = int; _Hash = std::hash<std::unordered_set<int> >; _Pred = std::equal_to<std::unordered_set<int> >; _Alloc = std::allocator<std::pair<const std::unordered_set<int>, int> >; std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::size_type = unsigned int; std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::hasher = std::hash<std::unordered_set<int> >; std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::key_equal = std::equal_to<std::unordered_set<int> >; std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::allocator_type = std::allocator<std::pair<const std::unordered_set<int>, int> >]':
conflicte.cpp:11:50: error: invalid use of incomplete type 'std::unordered_map<std::unordered_set<int>, int>::hasher {aka struct std::hash<std::unordered_set<int> >}'
 std::unordered_map<std::unordered_set<int>, int> m;

                                                  ^
In file included from /usr/include/c++/4.8/bits/basic_string.h:3033:0,
                 from /usr/include/c++/4.8/string:52,
                 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 conflicte.cpp:1:
/usr/include/c++/4.8/bits/functional_hash.h:58:12: error: declaration of 'std::unordered_map<std::unordered_set<int>, int>::hasher {aka struct std::hash<std::unordered_set<int> >}'
     struct hash;
            ^
conflicte.cpp:11:50: note:   when instantiating default argument for call to std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::unordered_map(std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::size_type, const hasher&, const key_equal&, const allocator_type&) [with _Key = std::unordered_set<int>; _Tp = int; _Hash = std::hash<std::unordered_set<int> >; _Pred = std::equal_to<std::unordered_set<int> >; _Alloc = std::allocator<std::pair<const std::unordered_set<int>, int> >; std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::size_type = unsigned int; std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::hasher = std::hash<std::unordered_set<int> >; std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::key_equal = std::equal_to<std::unordered_set<int> >; std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::allocator_type = std::allocator<std::pair<const std::unordered_set<int>, int> >]
 std::unordered_map<std::unordered_set<int>, int> m;

                                                  ^
conflicte.cpp: In function 'int main()':
conflicte.cpp:26:48: error: invalid initialization of reference of type 'const std::pair<int, int>&' from expression of type 'std::pair<const std::unordered_set<int>, int>'
         for (const std::pair<int, int>& elem : m)

                                                ^
conflicte.cpp:64:57: error: 'endl' was not declared in this scope
             fout << elem.first << " " << elem.second << endl;

                                                         ^
conflicte.cpp:64:57: note: suggested alternative:
In file included from /usr/include/c++/4.8/iostream:39:0,
                 from conflicte.cpp:1:
/usr/include/c++/4.8/ostream:564:5: note:   'std::endl'
     endl(basic_ostream<_CharT, _Traits>& __os)
     ^
In file included from /usr/include/c++/4.8/bits/hashtable.h:35:0,
                 from /usr/include/c++/4.8/unordered_map:47,
                 from conflicte.cpp:4:
/usr/include/c++/4.8/bits/hashtable_policy.h: In instantiation of 'std::__detail::_Hash_code_base<_Key, _Value, _ExtractKey, _H1, _H2, std::__detail::_Default_ranged_hash, true>::__hash_code std::__detail::_Hash_code_base<_Key, _Value, _ExtractKey, _H1, _H2, std::__detail::_Default_ranged_hash, true>::_M_hash_code(const _Key&) const [with _Key = std::unordered_set<int>; _Value = std::pair<const std::unordered_set<int>, int>; _ExtractKey = std::__detail::_Select1st; _H1 = std::hash<std::unordered_set<int> >; _H2 = std::__detail::_Mod_range_hashing; std::__detail::_Hash_code_base<_Key, _Value, _ExtractKey, _H1, _H2, std::__detail::_Default_ranged_hash, true>::__hash_code = unsigned int]':
/usr/include/c++/4.8/bits/hashtable_policy.h:487:49:   required from 'std::__detail::_Map_base<_Key, _Pair, _Alloc, std::__detail::_Select1st, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits, true>::mapped_type& std::__detail::_Map_base<_Key, _Pair, _Alloc, std::__detail::_Select1st, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits, true>::operator[](const key_type&) [with _Key = std::unordered_set<int>; _Pair = std::pair<const std::unordered_set<int>, int>; _Alloc = std::allocator<std::pair<const std::unordered_set<int>, int> >; _Equal = std::equal_to<std::unordered_set<int> >; _H1 = std::hash<std::unordered_set<int> >; _H2 = std::__detail::_Mod_range_hashing; _Hash = std::__detail::_Default_ranged_hash; _RehashPolicy = std::__detail::_Prime_rehash_policy; _Traits = std::__detail::_Hashtable_traits<true, false, true>; std::__detail::_Map_base<_Key, _Pair, _Alloc, std::__detail::_Select1st, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits, true>::mapped_type = int; std::__detail::_Map_base<_Key, _Pair, _Alloc, std::__detail::_Select1st, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits, true>::key_type = std::unordered_set<int>]'
/usr/include/c++/4.8/bits/unordered_map.h:596:20:   required from 'std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::mapped_type& std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::operator[](const key_type&) [with _Key = std::unordered_set<int>; _Tp = int; _Hash = std::hash<std::unordered_set<int> >; _Pred = std::equal_to<std::unordered_set<int> >; _Alloc = std::allocator<std::pair<const std::unordered_set<int>, int> >; std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::mapped_type = int; std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::key_type = std::unordered_set<int>]'
conflicte.cpp:23:16:   required from here
/usr/include/c++/4.8/bits/hashtable_policy.h:1103:22: error: no match for call to '(const std::hash<std::unordered_set<int> >) (const std::unordered_set<int>&)'
       { return _M_h1()(__k); }
                      ^
/usr/include/c++/4.8/bits/hashtable_policy.h: In instantiation of 'std::__detail::_Hash_code_base<_Key, _Value, _ExtractKey, _H1, _H2, std::__detail::_Default_ranged_hash, true>::_Hash_code_base(const _ExtractKey&, const _H1&, const _H2&, const std::__detail::_Default_ranged_hash&) [with _Key = std::unordered_set<int>; _Value = std::pair<const std::unordered_set<int>, int>; _ExtractKey = std::__detail::_Select1st; _H1 = std::hash<std::unordered_set<int> >; _H2 = std::__detail::_Mod_range_hashing]':
/usr/include/c++/4.8/bits/hashtable_policy.h:1463:65:   required from 'std::__detail::_Hashtable_base<_Key, _Value, _ExtractKey, _Equal, _H1, _H2, _Hash, _Traits>::_Hashtable_base(const _ExtractKey&, const _H1&, const _H2&, const _Hash&, const _Equal&) [with _Key = std::unordered_set<int>; _Value = std::pair<const std::unordered_set<int>, int>; _ExtractKey = std::__detail::_Select1st; _Equal = std::equal_to<std::unordered_set<int> >; _H1 = std::hash<std::unordered_set<int> >; _H2 = std::__detail::_Mod_range_hashing; _Hash = std::__detail::_Default_ranged_hash; _Traits = std::__detail::_Hashtable_traits<true, false, true>]'
/usr/include/c++/4.8/bits/hashtable.h:828:24:   required from 'std::_Hashtable<_Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits>::_Hashtable(std::_Hashtable<_Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits>::size_type, const _H1&, const _H2&, const _Hash&, const _Equal&, const _ExtractKey&, const allocator_type&) [with _Key = std::unordered_set<int>; _Value = std::pair<const std::unordered_set<int>, int>; _Alloc = std::allocator<std::pair<const std::unordered_set<int>, int> >; _ExtractKey = std::__detail::_Select1st; _Equal = std::equal_to<std::unordered_set<int> >; _H1 = std::hash<std::unordered_set<int> >; _H2 = std::__detail::_Mod_range_hashing; _Hash = std::__detail::_Default_ranged_hash; _RehashPolicy = std::__detail::_Prime_rehash_policy; _Traits = std::__detail::_Hashtable_traits<true, false, true>; std::_Hashtable<_Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits>::size_type = unsigned int; std::_Hashtable<_Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits>::allocator_type = std::allocator<std::pair<const std::unordered_set<int>, int> >]'
/usr/include/c++/4.8/bits/hashtable.h:397:26:   required from 'std::_Hashtable<_Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits>::_Hashtable(std::_Hashtable<_Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits>::size_type, const _H1&, const key_equal&, const allocator_type&) [with _Key = std::unordered_set<int>; _Value = std::pair<const std::unordered_set<int>, int>; _Alloc = std::allocator<std::pair<const std::unordered_set<int>, int> >; _ExtractKey = std::__detail::_Select1st; _Equal = std::equal_to<std::unordered_set<int> >; _H1 = std::hash<std::unordered_set<int> >; _H2 = std::__detail::_Mod_range_hashing; _Hash = std::__detail::_Default_ranged_hash; _RehashPolicy = std::__detail::_Prime_rehash_policy; _Traits = std::__detail::_Hashtable_traits<true, false, true>; std::_Hashtable<_Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits>::size_type = unsigned int; std::_Hashtable<_Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits>::key_equal = std::equal_to<std::unordered_set<int> >; std::_Hashtable<_Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits>::allocator_type = std::allocator<std::pair<const std::unordered_set<int>, int> >]'
/usr/include/c++/4.8/bits/unordered_map.h:142:35:   required from 'std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::unordered_map(std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::size_type, const hasher&, const key_equal&, const allocator_type&) [with _Key = std::unordered_set<int>; _Tp = int; _Hash = std::hash<std::unordered_set<int> >; _Pred = std::equal_to<std::unordered_set<int> >; _Alloc = std::allocator<std::pair<const std::unordered_set<int>, int> >; std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::size_type = unsigned int; std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::hasher = std::hash<std::unordered_set<int> >; std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::key_equal = std::equal_to<std::unordered_set<int> >; std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::allocator_type = std::allocator<std::pair<const std::unordered_set<int>, int> >]'
conflicte.cpp:11:50:   required from here
/usr/include/c++/4.8/bits/hashtable_policy.h:1099:63: error: invalid use of incomplete type 'struct std::hash<std::unordered_set<int> >'
       : __ebo_extract_key(__ex), __ebo_h1(__h1), __ebo_h2(__h2) { }
                                                               ^
In file included from /usr/include/c++/4.8/bits/basic_string.h:3033:0,
                 from /usr/include/c++/4.8/string:52,
                 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 conflicte.cpp:1:
/usr/include/c++/4.8/bits/functional_hash.h:58:12: error: declaration of 'struct std::hash<std::unordered_set<int> >'
     struct hash;
            ^
In file included from /usr/include/c++/4.8/bits/hashtable.h:35:0,
                 from /usr/include/c++/4.8/unordered_map:47,
                 from conflicte.cpp:4:
/usr/include/c++/4.8/bits/hashtable_policy.h:1099:63: error: invalid use of incomplete type 'struct std::hash<std::unordered_set<int> >'
       : __ebo_extract_key(__ex), __ebo_h1(__h1), __ebo_h2(__h2) { }
                                                               ^
In file included from /usr/include/c++/4.8/bits/basic_string.h:3033:0,
                 from /usr/include/c++/4.8/string:52,
                 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 conflicte.cpp:1:
/usr/include/c++/4.8/bits/functional_hash.h:58:12: error: declaration of 'struct std::hash<std::unordered_set<int> >'
     struct hash;
            ^

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