Detalii evaluare #48611353

Rezumat problemă

La un concurs au participat N elevi, fiecare având punctaj un număr natural. Comisia dorește să găsească un subșir de sumă maximă, punând următoarea condiție: pentru fiecare elev există o limită atât la stânga left [] cât și la dreapta right [] în care nu se mai poate alege un alt elev. Cu alte cuvinte, dacă am selectat punctajul elevului i pentru subșir, nu mai putem selecta un elev din intervalul [ i­-left[i] , i+right[i] ].

Ajutați comisia să găsească subșirul de sumă maximă.

Concursul de Informatica "Spiru Haret" Targu Jiu, ed. I

Detalii

Problema forcoding Operații I/O forcoding.in/forcoding.out
Limita timp 1 secunde Limita memorie Total: 16 MB / Stivă 8 MB
Id soluție #48611353 Utilizator Lezau Andrei (Lezau_Andrei)
Fișier forcoding.cpp Dimensiune 705 B
Data încărcării 31 Ianuarie 2024, 04:00 Scor / rezultat Eroare de compilare

Evaluare


Mesaj compilare

forcoding.cpp:5:1: error: expected ',' or ';' before 'ofstream'
 ofstream cout("forcoding.out")

 ^
forcoding.cpp: In function 'int main()':
forcoding.cpp:15:26: error: 'n' was not declared in this scope
     for (int i = 1; i <= n; i++)

                          ^
forcoding.cpp:17:26: error: 'n' was not declared in this scope
     for (int i = 1; i <= n; i++)

                          ^
forcoding.cpp:18:16: error: reference to 'left' is ambiguous
         cin >> left[i];

                ^
forcoding.cpp:10:5: note: candidates are: int left [10005]
 int left[10005];

     ^
In file included from /usr/include/c++/4.8/ios:42:0,
                 from /usr/include/c++/4.8/istream:38,
                 from /usr/include/c++/4.8/fstream:38,
                 from forcoding.cpp:1:
/usr/include/c++/4.8/bits/ios_base.h:922:3: note:                 std::ios_base& std::left(std::ios_base&)
   left(ios_base& __base)
   ^
forcoding.cpp:19:26: error: 'n' was not declared in this scope
     for (int i = 1; i <= n; i++)

                          ^
forcoding.cpp:20:16: error: reference to 'right' is ambiguous
         cin >> right[i];

                ^
forcoding.cpp:11:5: note: candidates are: int right [10005]
 int right[10005];

     ^
In file included from /usr/include/c++/4.8/ios:42:0,
                 from /usr/include/c++/4.8/istream:38,
                 from /usr/include/c++/4.8/fstream:38,
                 from forcoding.cpp:1:
/usr/include/c++/4.8/bits/ios_base.h:930:3: note:                 std::ios_base& std::right(std::ios_base&)
   right(ios_base& __base)
   ^
forcoding.cpp:22:26: error: 'n' was not declared in this scope
     for (int i = 1; i <= n; i++)

                          ^
forcoding.cpp:25:33: error: reference to 'left' is ambiguous
         for (int j = 1; j < i - left[i]; j++)

                                 ^
forcoding.cpp:10:5: note: candidates are: int left [10005]
 int left[10005];

     ^
In file included from /usr/include/c++/4.8/ios:42:0,
                 from /usr/include/c++/4.8/istream:38,
                 from /usr/include/c++/4.8/fstream:38,
                 from forcoding.cpp:1:
/usr/include/c++/4.8/bits/ios_base.h:922:3: note:                 std::ios_base& std::left(std::ios_base&)
   left(ios_base& __base)
   ^
forcoding.cpp:26:13: error: 'dp' was not declared in this scope
         if (dp[j] > dp[x] && j + right[j] < i)

             ^
forcoding.cpp:26:34: error: reference to 'right' is ambiguous
         if (dp[j] > dp[x] && j + right[j] < i)

                                  ^
forcoding.cpp:11:5: note: candidates are: int right [10005]
 int right[10005];

     ^
In file included from /usr/include/c++/4.8/ios:42:0,
                 from /usr/include/c++/4.8/istream:38,
                 from /usr/include/c++/4.8/fstream:38,
                 from forcoding.cpp:1:
/usr/include/c++/4.8/bits/ios_base.h:930:3: note:                 std::ios_base& std::right(std::ios_base&)
   right(ios_base& __base)
   ^
forcoding.cpp:29:9: error: 'dp' was not declared in this scope
         dp[i] == dp[x] + a[i];

         ^
forcoding.cpp:35:26: error: 'n' was not declared in this scope
     for (int i = 1; i <= n; i++)

                          ^
forcoding.cpp:36:9: error: 'sol' was not declared in this scope
         sol = max(sol, dp[i]);

         ^
forcoding.cpp:36:24: error: 'dp' was not declared in this scope
         sol = max(sol, dp[i]);

                        ^
forcoding.cpp:33:19: warning: unused variable 'ma' [-Wunused-variable]
     long long int ma = -1e18;

                   ^

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