#1706
Stele
2
, strict mai mică decât 2
26
, cu o literă a alfabetului, astfel: 2 0 |
2 1 |
2 2 |
2 3 |
2 4 |
2 5 |
2 6 |
2 7 |
2 8 |
2 9 |
2 10 |
2 11 |
2 12 |
a | b | c | d | e | f | g | h | i | j | k | l | m |
2 13 |
2 14 |
2 15 |
2 16 |
2 17 |
2 18 |
2 19 |
2 20 |
2 21 |
2 22 |
2 23 |
2 24 |
2 25 |
n | o | p | q | r | s | t | u | v | w | x | y | z |
2
; dacă o putere este folosită de mai multe ori în descompunerea numărului atunci ea va fi precedată în șir de numărul de utilizări.Un număr poate fi reprezentat astfel în mai multe moduri. De exemplu, pentru numărul 100
printre variantele de reprezentare avem:
100 = cfg = 22+25+26 = 4+32+64 = 100
100 = 2ab2cde2f = 2*20+21+2*22+23+24+2*25 = 2*1+2+2*4+8+16+2*32 = 100
100 = 16bcg = 16*21+22+26 = 16*2+4+64 = 100
Scrieți un program care rezolvă următoarele cerinţe:
s
numărul de stele dintr-o galaxie, determină o reprezentare codificată a acestui număr formată doar din litere mici distincte ordonate alfabetic;g
, reprezentând numărul de galaxii și g
numere în scriere codificată, reprezentând numărul de stele din fiecare galaxie, determină scrierea zecimală a numărului total de stele din cele g
galaxii.ONI 2016, clasa a VIII-a
Problema | Stele | Operații I/O |
stele.in /stele.out
|
---|---|---|---|
Limita timp | 0.1 secunde | Limita memorie |
Total: 16 MB
/
Stivă 8 MB
|
Id soluție | #50652592 | Utilizator | |
Fișier | stele.cpp | Dimensiune | 1.19 KB |
Data încărcării | 18 Aprilie 2024, 17:17 | Scor / rezultat | Eroare de compilare |
stele.cpp: In function 'long long int cost(std::string)': stele.cpp:30:45: error: no matching function for call to 'max(int, long long int&)' r += lit_to_num(s[i]) * max(1, x); ^ stele.cpp:30:45: 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/sstream:38, from /usr/include/c++/4.8/complex:45, from /usr/include/c++/4.8/ccomplex:38, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:52, from stele.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: stele.cpp:30:45: note: deduced conflicting types for parameter 'const _Tp' ('int' and 'long long int') r += lit_to_num(s[i]) * max(1, x); ^ 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/sstream:38, from /usr/include/c++/4.8/complex:45, from /usr/include/c++/4.8/ccomplex:38, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:52, from stele.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: stele.cpp:30:45: note: deduced conflicting types for parameter 'const _Tp' ('int' and 'long long int') r += lit_to_num(s[i]) * max(1, x); ^ In file included from /usr/include/c++/4.8/algorithm:62:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from stele.cpp:1: /usr/include/c++/4.8/bits/stl_algo.h:4231:5: note: template<class _Tp> _Tp std::max(std::initializer_list<_Tp>) max(initializer_list<_Tp> __l) ^ /usr/include/c++/4.8/bits/stl_algo.h:4231:5: note: template argument deduction/substitution failed: stele.cpp:30:45: note: mismatched types 'std::initializer_list<_Tp>' and 'int' r += lit_to_num(s[i]) * max(1, x); ^ In file included from /usr/include/c++/4.8/algorithm:62:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from stele.cpp:1: /usr/include/c++/4.8/bits/stl_algo.h:4236:5: note: template<class _Tp, class _Compare> _Tp std::max(std::initializer_list<_Tp>, _Compare) max(initializer_list<_Tp> __l, _Compare __comp) ^ /usr/include/c++/4.8/bits/stl_algo.h:4236:5: note: template argument deduction/substitution failed: stele.cpp:30:45: note: mismatched types 'std::initializer_list<_Tp>' and 'int' r += lit_to_num(s[i]) * max(1, x); ^ stele.cpp: In function 'int main()': stele.cpp:43:21: warning: unused variable 'x' [-Wunused-variable] long long c, n, x, r; ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Stele 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ă.