Detalii evaluare #54529731

Rezumat problemă

Pentru un şir de caractere S, vom nota cu lmax[S] lungimea maximă a unei secvenţe palindromice conţinută în şirul S. Astfel, pentru şirul S=”abAabaabC”, lmax[S]=4, iar pentru şirul S=”a”, lmax[S]=1.

Prin secvenţa palindromică a unui şir S înţelegem un subşir de caractere aflate pe poziţii consecutive, ce formează un palindrom.

Date fiind N şiruri de caractere S[1], S[2],…, S[n] şi o valoare naturală L, se cere să se determine numărul de secvenţe de şiruri de caractere de forma: S[i], S[i+1], … , S[j], cu i<=j, pentru care lmax[S[i]]+lmax[S[i+1]]+... +lmax[S[j]]=L.

Detalii

Problema SecvPal1 Operații I/O secvpal1.in/secvpal1.out
Limita timp 1.5 secunde Limita memorie Total: 4 MB / Stivă 4 MB
Id soluție #54529731 Utilizator Grecu Rareș (grecuconstantinrares)
Fișier secvpal1.cpp Dimensiune 1.51 KB
Data încărcării 01 Decembrie 2024, 18:26 Scor / rezultat Eroare de compilare

Evaluare


Mesaj compilare

secvpal1.cpp: In function 'long long int build()':
secvpal1.cpp:21:12: warning: converting to non-pointer type 'char' from NULL [-Wconversion-null]
     s[++k] = NULL;

            ^
secvpal1.cpp:22:1: warning: no return statement in function returning non-void [-Wreturn-type]
 }

 ^
secvpal1.cpp: In function 'int32_t manechiura()':
secvpal1.cpp:31:37: error: no matching function for call to 'max(int, const long long int&)'
         d[i] = max(0, min(r-i, d[j]));

                                     ^
secvpal1.cpp:31:37: 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 secvpal1.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:
secvpal1.cpp:31:37: note:   deduced conflicting types for parameter 'const _Tp' ('int' and 'long long int')
         d[i] = max(0, min(r-i, d[j]));

                                     ^
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 secvpal1.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:
secvpal1.cpp:31:37: note:   deduced conflicting types for parameter 'const _Tp' ('int' and 'long long int')
         d[i] = max(0, min(r-i, d[j]));

                                     ^
secvpal1.cpp: At global scope:
secvpal1.cpp:40:10: error: '::main' must return 'int'
 int main()

          ^
secvpal1.cpp: In function 'int main()':
secvpal1.cpp:47:17: warning: unused variable 'grecu' [-Wunused-variable]
             int grecu = 1;

                 ^

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