Detalii evaluare #32264934

Rezumat problemă

#3061 oracol

Gustavo, după ce a realizat că posedă abilitatea de a vedea în viitor, a decis că a venit momentul să treacă la următorul nivel și să-și valorifice capacitățile extrasenzoriale. Pentru a câștiga prestigiu și a deveni mai cunoscut în rândurile magicienilor profesioniști, acesta a ales să debuteze la Olimpiada Națională de Informatică prin prezicerea datelor de intrare pentru anumite probleme propuse în concurs. Primul client al lui Gustavo, Alfredo, ar dori să afle într-un mod inedit conținutul unui fișier de intrare aferent unei probleme de concurs, în care sunt scrise elementele unui șir p de N numere întregi. Pentru a face lucrurile mai interesante, Gustavo îi percepe o taxă de C(i,j) bănuți pentru a-i divulga suma numerelor din șirul p cu indici în intervalul [i, j], anume pi + pi+1 + ... + pj. Dându-se valoarea lui N și toate valorile C(i,j) cu 1 ≤ i ≤ j ≤ N, determinați costul total minim pe care trebuie să-l plătească Alfredo pentru a afla toate elementele șirului p.

Detalii

Problema oracol Operații I/O oracol.in/oracol.out
Limita timp 0.3 secunde Limita memorie Total: 128 MB / Stivă 8 MB
Id soluție #32264934 Utilizator Ciorne i (Joergen)
Fișier oracol.cpp Dimensiune 1.31 KB
Data încărcării 10 Noiembrie 2021, 21:56 Scor / rezultat 100 puncte

Evaluare


Mesaj compilare

oracol.cpp: In function 'int getroot(int)':
oracol.cpp:29:17: warning: value computed is not used [-Wunused-value]
         root[x] == getroot(root[x]);

                 ^
oracol.cpp: In function 'int main()':
oracol.cpp:48:30: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     for(int i = 0;i < v.size() && cnt != n; ++i)

                              ^
oracol.cpp: In function 'int getroot(int)':
oracol.cpp:32:1: warning: control reaches end of non-void function [-Wreturn-type]
 }

 ^
oracol.cpp: In function 'int main()':
oracol.cpp:4:45: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)', declared with attribute warn_unused_result [-Wunused-result]
 #define FILES freopen("oracol.in","r",stdin);\

                                             ^
oracol.cpp:37:5: note: in expansion of macro 'FILES'
     FILES

     ^
oracol.cpp:5:47: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)', declared with attribute warn_unused_result [-Wunused-result]
               freopen("oracol.out","w",stdout);

                                               ^
oracol.cpp:37:5: note: in expansion of macro 'FILES'
     FILES

     ^

Rezultat evaluare

Test Timp Mesaj evaluare Scor posibil Scor obținut
0 0 secunde OK. 11 11
1 0 secunde OK. 10 10
2 0 secunde OK. 11 11
3 0.004 secunde OK. 16 16
4 0.028 secunde OK. 15 15
5 0.064 secunde OK. 15 15
6 0.084 secunde OK. 11 11
7 0.124 secunde OK. 11 11
Punctaj total 100

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