#846
Se dă un șir de caractere ce conține doar litere mici ale alfabetului englez. Să se afișeze cel mai lung subșir care apare de cel puțin două ori în șirul dat.
| Problema | Dubluri | Operații I/O |
tastatură/ecran
|
|---|---|---|---|
| Limita timp | 0.1 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
| Id soluție | #64625506 | Utilizator | |
| Fișier | dubluri.cpp | Dimensiune | 918 B |
| Data încărcării | 19 Mai 2026, 10:39 | Scor/rezultat | Eroare de compilare |
dubluri.cpp: In function ‘int main()’: dubluri.cpp:10:13: error: ‘vector’ was not declared in this scope 10 | map<char, vector<int>> pos; | ^~~~~~ dubluri.cpp:4:1: note: ‘std::vector’ is defined in header ‘<vector>’; did you forget to ‘#include <vector>’? 3 | #include <ranges> +++ |+#include <vector> 4 | using namespace std; dubluri.cpp:10:23: error: template argument 2 is invalid 10 | map<char, vector<int>> pos; | ^~ dubluri.cpp:10:23: error: template argument 4 is invalid dubluri.cpp:11:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::__cxx11::basic_string<char>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 11 | for (auto i = 0; i < s.size(); i++) { | ~~^~~~~~~~~~ dubluri.cpp:12:12: error: expected primary-expression before ‘int’ 12 | vector<int> &positions = pos[s[i]]; | ^~~ dubluri.cpp:13:5: error: ‘positions’ was not declared in this scope 13 | positions.push_back(i); | ^~~~~~~~~ dubluri.cpp:19:20: warning: structured bindings only available with ‘-std=c++17’ or ‘-std=gnu++17’ [-Wc++17-extensions] 19 | for (const auto &[key, positions] : pos) { | ^ dubluri.cpp:19:39: error: ‘begin’ was not declared in this scope; did you mean ‘std::begin’? 19 | for (const auto &[key, positions] : pos) { | ^~~ | std::begin In file included from /usr/include/c++/13/string:53, from /usr/include/c++/13/bits/locale_classes.h:40, from /usr/include/c++/13/bits/ios_base.h:41, from /usr/include/c++/13/ios:44, from /usr/include/c++/13/ostream:40, from /usr/include/c++/13/iostream:41, from dubluri.cpp:1: /usr/include/c++/13/bits/range_access.h:95:5: note: ‘std::begin’ declared here 95 | begin(_Tp (&__arr)[_Nm]) noexcept | ^~~~~ dubluri.cpp:19:39: error: ‘end’ was not declared in this scope; did you mean ‘std::end’? 19 | for (const auto &[key, positions] : pos) { | ^~~ | std::end /usr/include/c++/13/bits/range_access.h:106:5: note: ‘std::end’ declared here 106 | end(_Tp (&__arr)[_Nm]) noexcept | ^~~ dubluri.cpp:23:31: error: ‘std::views’ has not been declared 23 | for (const int j : std::views::reverse(positions)) { | ^~~~~ dubluri.cpp:25:39: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::__cxx11::basic_string<char>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | while (i + k < j + k && i + k < s.size() && j + k < s.size() && | ~~~~~~^~~~~~~~~~ dubluri.cpp:25:59: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::__cxx11::basic_string<char>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | while (i + k < j + k && i + k < s.size() && j + k < s.size() && | ~~~~~~^~~~~~~~~~
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Dubluri 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ă.