#1138
Speciale
Maria a aflat că numerele naturale care încep cu cifra 1
și au toate cifrele ordonate strict crescător şi consecutive sau încep cu cifra 9
și au toate cifrele ordonate strict descrescător şi consecutive se numesc numere speciale. Interesată să descopere legătura dintre numerele speciale cu același număr de cifre, a observat că poate construi tabelul alăturat.
Scrieţi un program care citind patru numere naturale K
, N
, A
şi B
determină:
1) cel mai mare număr special situat în tabel pe linia K
;
2) numărul special obţinut din numărul N
prin ştergerea unei cifre;
3) numărul de numere speciale din mulțimea {A , A +1, A+2, A+3…,B-1,B}
.
Problema | Speciale | Operații I/O |
speciale.in /speciale.out
|
---|---|---|---|
Limita timp | 0.5 secunde | Limita memorie |
Total: 2 MB
/
Stivă 2 MB
|
Id soluție | #50779106 | Utilizator | |
Fișier | speciale.cpp | Dimensiune | 1.44 KB |
Data încărcării | 03 Mai 2024, 02:13 | Scor / rezultat | Eroare de compilare |
speciale.cpp: In function 'int main()': speciale.cpp:25:32: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] while (result.size() < N && max_digit >= 1) { ^ speciale.cpp:26:110: error: no matching function for call to 'min(std::basic_string<char>::size_type, int)' result += create_descending(std::min(S, max_digit), std::min(N - result.size(), max_digit - B + 1)); ^ speciale.cpp:26:110: 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 speciale.cpp:1: /usr/include/c++/4.8/bits/stl_algobase.h:193:5: note: template<class _Tp> const _Tp& std::min(const _Tp&, const _Tp&) min(const _Tp& __a, const _Tp& __b) ^ /usr/include/c++/4.8/bits/stl_algobase.h:193:5: note: template argument deduction/substitution failed: speciale.cpp:26:110: note: deduced conflicting types for parameter 'const _Tp' ('unsigned int' and 'int') result += create_descending(std::min(S, max_digit), std::min(N - result.size(), max_digit - B + 1)); ^ 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 speciale.cpp:1: /usr/include/c++/4.8/bits/stl_algobase.h:239:5: note: template<class _Tp, class _Compare> const _Tp& std::min(const _Tp&, const _Tp&, _Compare) min(const _Tp& __a, const _Tp& __b, _Compare __comp) ^ /usr/include/c++/4.8/bits/stl_algobase.h:239:5: note: template argument deduction/substitution failed: speciale.cpp:26:110: note: deduced conflicting types for parameter 'const _Tp' ('unsigned int' and 'int') result += create_descending(std::min(S, max_digit), std::min(N - result.size(), max_digit - B + 1)); ^ In file included from /usr/include/c++/4.8/algorithm:62:0, from speciale.cpp:4: /usr/include/c++/4.8/bits/stl_algo.h:4221:5: note: template<class _Tp> _Tp std::min(std::initializer_list<_Tp>) min(initializer_list<_Tp> __l) ^ /usr/include/c++/4.8/bits/stl_algo.h:4221:5: note: template argument deduction/substitution failed: speciale.cpp:26:110: note: mismatched types 'std::initializer_list<_Tp>' and 'unsigned int' result += create_descending(std::min(S, max_digit), std::min(N - result.size(), max_digit - B + 1)); ^ In file included from /usr/include/c++/4.8/algorithm:62:0, from speciale.cpp:4: /usr/include/c++/4.8/bits/stl_algo.h:4226:5: note: template<class _Tp, class _Compare> _Tp std::min(std::initializer_list<_Tp>, _Compare) min(initializer_list<_Tp> __l, _Compare __comp) ^ /usr/include/c++/4.8/bits/stl_algo.h:4226:5: note: template argument deduction/substitution failed: speciale.cpp:26:110: note: mismatched types 'std::initializer_list<_Tp>' and 'unsigned int' result += create_descending(std::min(S, max_digit), std::min(N - result.size(), max_digit - B + 1)); ^ speciale.cpp:33:32: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if (temp.size() == N) { ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Speciale 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ă.