#4474
Magie1
Vrăjitorul Amaric a găsit un șir cu N
numere, pe care vrea să-l transforme astfel încât să conțină o secvență de valori egale de lungime cât mai mare. Pentru aceasta, Amaric a pregătit două feluri de magii:
- magia de tip 1: alege două numere din șir și le schimbă între ele în șir. Această magie se poate aplica de oricâte ori.
- magia de tip 2: alege un număr din șir și îl mărește cu o valoare care este divizor al acestuia. Această magie se poate aplica cel mult o dată pentru fiecare număr din șir.
De exemplu, dacă șirul contine numerele (6, 8, 4, 8)
, aplicând magia de tip 1 pentru numerele 4
și 8
, șirul devine (6, 8, 8, 4)
. Dacă aplicăm magia de tip 2 pentru numărul 4
, el poate deveni 5
sau 6
sau 8
.
Scrieți un program care să determine lungimea maximă a unei secvențe de numere egale dacă:
Concursul Interjudețean de Matematică și Informatică SEVER-AUREL GROZE 2023
Problema | Magie1 | Operații I/O |
magie.in /magie.out
|
---|---|---|---|
Limita timp | 0.2 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
Id soluție | #53011630 | Utilizator | |
Fișier | magie1.cpp | Dimensiune | 1.11 KB |
Data încărcării | 15 Octombrie 2024, 15:12 | Scor / rezultat | Eroare de compilare |
magie1.cpp: In function 'void solve1()': magie1.cpp:19:20: error: no 'operator++(int)' declared for postfix '++' [-fpermissive] frecv[v[i]]++; ^ magie1.cpp:21:24: error: expected ';' before ')' token for(int i=1;i<=5000) ^ magie1.cpp:22:34: error: no matching function for call to 'max(int&, std::vector<int>&)' lmax=max(lmax,frecv[v[i]]); ^ magie1.cpp:22:34: note: candidates are: In file included from /usr/include/c++/4.8/bits/char_traits.h:39:0, 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 magie1.cpp:1: /usr/include/c++/4.8/bits/stl_algobase.h:216:5: note: template<class _Tp> const _Tp& std::max(const _Tp&, const _Tp&) max(const _Tp& __a, const _Tp& __b) ^ /usr/include/c++/4.8/bits/stl_algobase.h:216:5: note: template argument deduction/substitution failed: magie1.cpp:22:34: note: deduced conflicting types for parameter 'const _Tp' ('int' and 'std::vector<int>') lmax=max(lmax,frecv[v[i]]); ^ In file included from /usr/include/c++/4.8/bits/char_traits.h:39:0, 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 magie1.cpp:1: /usr/include/c++/4.8/bits/stl_algobase.h:260:5: note: template<class _Tp, class _Compare> const _Tp& std::max(const _Tp&, const _Tp&, _Compare) max(const _Tp& __a, const _Tp& __b, _Compare __comp) ^ /usr/include/c++/4.8/bits/stl_algobase.h:260:5: note: template argument deduction/substitution failed: magie1.cpp:22:34: note: deduced conflicting types for parameter 'const _Tp' ('int' and 'std::vector<int>') lmax=max(lmax,frecv[v[i]]); ^ magie1.cpp: In function 'void solve3()': magie1.cpp:33:16: error: too few arguments to function 'void ciurstupid(std::vector<std::vector<int> >&)' ciurstupid(); ^ magie1.cpp:9:6: note: declared here void ciurstupid(vector<vector<int>>& frecvbd) ^ magie1.cpp:37:20: error: no 'operator++(int)' declared for postfix '++' [-fpermissive] frecv[v[i]]++; ^ magie1.cpp:38:39: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for(int j=0;j<frecvbd[i].size();j++) ^ magie1.cpp:39:33: error: no 'operator++(int)' declared for postfix '++' [-fpermissive] frecv[frecvbd[i][j]]++; ^ magie1.cpp:43:31: error: no matching function for call to 'max(int&, std::vector<int>&)' lmax=max(lmax,frecv[i]); ^ magie1.cpp:43:31: note: candidates are: In file included from /usr/include/c++/4.8/bits/char_traits.h:39:0, 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 magie1.cpp:1: /usr/include/c++/4.8/bits/stl_algobase.h:216:5: note: template<class _Tp> const _Tp& std::max(const _Tp&, const _Tp&) max(const _Tp& __a, const _Tp& __b) ^ /usr/include/c++/4.8/bits/stl_algobase.h:216:5: note: template argument deduction/substitution failed: magie1.cpp:43:31: note: deduced conflicting types for parameter 'const _Tp' ('int' and 'std::vector<int>') lmax=max(lmax,frecv[i]); ^ In file included from /usr/include/c++/4.8/bits/char_traits.h:39:0, 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 magie1.cpp:1: /usr/include/c++/4.8/bits/stl_algobase.h:260:5: note: template<class _Tp, class _Compare> const _Tp& std::max(const _Tp&, const _Tp&, _Compare) max(const _Tp& __a, const _Tp& __b, _Compare __comp) ^ /usr/include/c++/4.8/bits/stl_algobase.h:260:5: note: template argument deduction/substitution failed: magie1.cpp:43:31: note: deduced conflicting types for parameter 'const _Tp' ('int' and 'std::vector<int>') lmax=max(lmax,frecv[i]); ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Magie1 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ă.