#2384
Un șir de numere aparțin unui divigrup dacă au același număr de divizori. Scrieți un program care citește un număr natural N
și apoi N
numere naturale nenule și care determină:
a. câte divigrupuri există în șirul de numere citite
b. numărul de numere din fiecare divigrup, urmat de numerele ce aparțin acestuia, în ordine crescătoare.
Problema | Divigrup | Operații I/O |
![]() divigrup.in /divigrup.out
|
---|---|---|---|
Limita timp | 0.01 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
Id soluție | #57316388 | Utilizator | |
Fișier | divigrup.cpp | Dimensiune | 1.30 KB |
Data încărcării | 25 Martie 2025, 17:42 | Scor / rezultat | Eroare de compilare |
divigrup.cpp:23:21: error: 'multimeb' has not been declared bool comp(multime a,multimeb){ ^ divigrup.cpp: In function 'bool comp(multime, int)': divigrup.cpp:24:20: error: 'b' was not declared in this scope if(a.divizori==b.divizori) ^ divigrup.cpp:26:23: error: 'b' was not declared in this scope return a.divizori>b.divizori; ^ In file included from /usr/include/c++/4.8/algorithm:62:0, from divigrup.cpp:3: /usr/include/c++/4.8/bits/stl_algo.h: In instantiation of 'void std::__insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = multime*; _Compare = bool (*)(multime, int)]': /usr/include/c++/4.8/bits/stl_algo.h:2226:70: required from 'void std::__final_insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = multime*; _Compare = bool (*)(multime, int)]' /usr/include/c++/4.8/bits/stl_algo.h:5500:55: required from 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = multime*; _Compare = bool (*)(multime, int)]' divigrup.cpp:37:24: required from here /usr/include/c++/4.8/bits/stl_algo.h:2159:29: error: cannot convert 'multime' to 'int' in argument passing if (__comp(*__i, *__first)) ^ /usr/include/c++/4.8/bits/stl_algo.h: In instantiation of 'void std::__heap_select(_RandomAccessIterator, _RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = multime*; _Compare = bool (*)(multime, int)]': /usr/include/c++/4.8/bits/stl_algo.h:5349:59: required from 'void std::partial_sort(_RAIter, _RAIter, _RAIter, _Compare) [with _RAIter = multime*; _Compare = bool (*)(multime, int)]' /usr/include/c++/4.8/bits/stl_algo.h:2332:68: required from 'void std::__introsort_loop(_RandomAccessIterator, _RandomAccessIterator, _Size, _Compare) [with _RandomAccessIterator = multime*; _Size = int; _Compare = bool (*)(multime, int)]' /usr/include/c++/4.8/bits/stl_algo.h:5499:44: required from 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = multime*; _Compare = bool (*)(multime, int)]' divigrup.cpp:37:24: required from here /usr/include/c++/4.8/bits/stl_algo.h:1948:27: error: cannot convert 'multime' to 'int' in argument passing if (__comp(*__i, *__first)) ^ /usr/include/c++/4.8/bits/stl_algo.h: In instantiation of 'void std::__move_median_to_first(_Iterator, _Iterator, _Iterator, _Iterator, _Compare) [with _Iterator = multime*; _Compare = bool (*)(multime, int)]': /usr/include/c++/4.8/bits/stl_algo.h:2295:13: required from '_RandomAccessIterator std::__unguarded_partition_pivot(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = multime*; _Compare = bool (*)(multime, int)]' /usr/include/c++/4.8/bits/stl_algo.h:2337:62: required from 'void std::__introsort_loop(_RandomAccessIterator, _RandomAccessIterator, _Size, _Compare) [with _RandomAccessIterator = multime*; _Size = int; _Compare = bool (*)(multime, int)]' /usr/include/c++/4.8/bits/stl_algo.h:5499:44: required from 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = multime*; _Compare = bool (*)(multime, int)]' divigrup.cpp:37:24: required from here /usr/include/c++/4.8/bits/stl_algo.h:114:28: error: cannot convert 'multime' to 'int' in argument passing if (__comp(*__a, *__b)) ^ /usr/include/c++/4.8/bits/stl_algo.h:116:25: error: cannot convert 'multime' to 'int' in argument passing if (__comp(*__b, *__c)) ^ /usr/include/c++/4.8/bits/stl_algo.h:118:30: error: cannot convert 'multime' to 'int' in argument passing else if (__comp(*__a, *__c)) ^ /usr/include/c++/4.8/bits/stl_algo.h:123:33: error: cannot convert 'multime' to 'int' in argument passing else if (__comp(*__a, *__c)) ^ /usr/include/c++/4.8/bits/stl_algo.h:125:33: error: cannot convert 'multime' to 'int' in argument passing else if (__comp(*__b, *__c)) ^ /usr/include/c++/4.8/bits/stl_algo.h: In instantiation of '_RandomAccessIterator std::__unguarded_partition(_RandomAccessIterator, _RandomAccessIterator, const _Tp&, _Compare) [with _RandomAccessIterator = multime*; _Tp = multime; _Compare = bool (*)(multime, int)]': /usr/include/c++/4.8/bits/stl_algo.h:2296:78: required from '_RandomAccessIterator std::__unguarded_partition_pivot(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = multime*; _Compare = bool (*)(multime, int)]' /usr/include/c++/4.8/bits/stl_algo.h:2337:62: required from 'void std::__introsort_loop(_RandomAccessIterator, _RandomAccessIterator, _Size, _Compare) [with _RandomAccessIterator = multime*; _Size = int; _Compare = bool (*)(multime, int)]' /usr/include/c++/4.8/bits/stl_algo.h:5499:44: required from 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = multime*; _Compare = bool (*)(multime, int)]' divigrup.cpp:37:24: required from here /usr/include/c++/4.8/bits/stl_algo.h:2263:35: error: cannot convert 'const multime' to 'int' in argument passing while (__comp(*__first, __pivot)) ^ /usr/include/c++/4.8/bits/stl_algo.h:2266:34: error: cannot convert 'multime' to 'int' in argument passing while (__comp(__pivot, *__last)) ^ In file included from /usr/include/c++/4.8/queue:62:0, from divigrup.cpp:2: /usr/include/c++/4.8/bits/stl_heap.h: In instantiation of 'void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = multime*; _Distance = int; _Tp = multime; _Compare = bool (*)(multime, int)]': /usr/include/c++/4.8/bits/stl_heap.h:448:15: required from 'void std::make_heap(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = multime*; _Compare = bool (*)(multime, int)]' /usr/include/c++/4.8/bits/stl_algo.h:1946:47: required from 'void std::__heap_select(_RandomAccessIterator, _RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = multime*; _Compare = bool (*)(multime, int)]' /usr/include/c++/4.8/bits/stl_algo.h:5349:59: required from 'void std::partial_sort(_RAIter, _RAIter, _RAIter, _Compare) [with _RAIter = multime*; _Compare = bool (*)(multime, int)]' /usr/include/c++/4.8/bits/stl_algo.h:2332:68: required from 'void std::__introsort_loop(_RandomAccessIterator, _RandomAccessIterator, _Size, _Compare) [with _RandomAccessIterator = multime*; _Size = int; _Compare = bool (*)(multime, int)]' /usr/include/c++/4.8/bits/stl_algo.h:5499:44: required from 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = multime*; _Compare = bool (*)(multime, int)]' divigrup.cpp:37:24: required from here /usr/include/c++/4.8/bits/stl_heap.h:313:40: error: cannot convert 'multime' to 'int' in argument passing *(__first + (__secondChild - 1)))) ^ divigrup.cpp:27:1: warning: control reaches end of non-void function [-Wreturn-type] } ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Divigrup 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ă.