Detalii evaluare #58786408

Rezumat problemă

Fiind dat un șir de numere, numim secvență a acestuia o parte dintre termenii șirului luați de pe poziții consecutive. Denumim platou al acestui șir o secvență formată din valori identice. Lungimea unui platou este egală cu numărul de elemente care îl formează.

Asupra unui șir se poate efectua următoarea operație:

  1. se extrage un platou la alegere;
  2. se inserează platoul extras la pasul anterior într-o poziție la alegere din șirul rezultat după extragere.

Să se scrie un program care citește un șir de n numere naturale din intervalul [0,10000] și un număr k și determină:

  1. lungimea maximă a unui platou care poate să apară în șir în urma efectuării operației de mai sus de maxim k ori;
  2. elementul din care este format platoul obținut după cele k operații.

Detalii

Problema PlatouK_v2 Operații I/O tastatură/ecran
Limita timp 0.22 secunde Limita memorie Total: 5.5 MB / Stivă 5.5 MB
Id soluție #58786408 Utilizator Călin V. Dragos Andrei (dragoscalin)
Fișier platouk_v2.cpp Dimensiune 1.01 KB
Data încărcării 07 August 2025, 23:20 Scor/rezultat Eroare de compilare

Evaluare

Mesaj compilare

platouk_v2.cpp: In function 'int main()':
platouk_v2.cpp:28:61: error: no matching function for call to 'min(int, std::vector<int>::size_type)'
         for ( idx = 0 ; idx < min ( k + 1 , secv[i].size () ) ; idx-- )

                                                             ^
platouk_v2.cpp:28:61: 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 platouk_v2.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:
platouk_v2.cpp:28:61: note:   deduced conflicting types for parameter 'const _Tp' ('int' and 'std::vector<int>::size_type {aka unsigned int}')
         for ( idx = 0 ; idx < min ( k + 1 , secv[i].size () ) ; idx-- )

                                                             ^
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 platouk_v2.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:
platouk_v2.cpp:28:61: note:   deduced conflicting types for parameter 'const _Tp' ('int' and 'std::vector<int>::size_type {aka unsigned int}')
         for ( idx = 0 ; idx < min ( k + 1 , secv[i].size () ) ; idx-- )

                                                             ^
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 platouk_v2.cpp:1:
/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:
platouk_v2.cpp:28:61: note:   mismatched types 'std::initializer_list<_Tp>' and 'int'
         for ( idx = 0 ; idx < min ( k + 1 , secv[i].size () ) ; idx-- )

                                                             ^
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 platouk_v2.cpp:1:
/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:
platouk_v2.cpp:28:61: note:   mismatched types 'std::initializer_list<_Tp>' and 'int'
         for ( idx = 0 ; idx < min ( k + 1 , secv[i].size () ) ; idx-- )

                                                             ^

Cum funcționează evaluarea?

www.pbinfo.ro permite evaluarea a două tipuri de probleme:

  • probleme la care rezolvarea presupune scrierea unui program complet
  • probleme la care rezolvarea presupune scrierea unei secvențe de program - câteva instrucțiuni, o listă de declarații, una sau mai multe funcții, etc.

Problema PlatouK_v2 face parte din prima categorie. Soluția propusă de tine va fi evaluată astfel:

  • Programul sursă este compilat folosind compilatorul corespunzător. Dacă în urma compilării se obțin erori sau avertismente, acestea sunt afișate în această pagină.
  • Dacă programul a fost compilat, executabilul obținut va fi rulat, furnizându-i-se unul sau mai multe seturi de date de intrare, în concordanță cu restricțiile specifice problemei. Pentru fiecare set de date se obține un anumit punctaj, în raport cu corectitudinea soluției tale.

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ă.

Du-te sus!