Detalii evaluare #55077305

Rezumat problemă

#3042 amat

Pasionat de informatică și de puzzle-uri, Dorel a construit o matrice A de dimensiunea N × M lipind mai multe piese dreptunghiulare de diferite dimensiuni. Fiecare piesă este compusă din elemente de dimensiunea 1 × 1 și rețin o aceeași valoare. Matricea rezultată nu are spații libere, iar piesele din care este compusă nu se suprapun. Nu există două piese cu aceeași valoare.
Deși inițial părea că acest design este unul inedit, nu a durat mult până când Dorel s-a plictisit. Astfel, acum el dorește să “upgradeze” matricea construită. Dorel alege o submatrice delimitată de coordonatele (x1,y1) – colțul stânga-sus, (x2,y2) – colțul dreapta-jos (1 ≤ x1 ≤ x2 ≤ N, 1 ≤ y1 ≤ y2 ≤ M), unde crește toate valorile elementelor submatricei cu valoarea V.
Dorel efectuează în ordine Q operații de upgrade, operații numerotate de la 1 la Q. La finalizarea celor Q operații de upgrade, toate elementele din matrice au valoarea mai mare sau egală cu K. După o operație de upgrade, structura inițială a matricei se modifică.
Cum priceperea lui Dorel este proverbială, trebuie să îl ajutați în rezolvarea următoarelor cerințe:
1) determinarea coordonatelor piesei cu număr maxim de elemente înainte ca Dorel să efectueze operațiile de upgrade;
2) determinarea numărului minim de operații de upgrade după care toate elementele matricei au valoarea mai mare sau egală cu K.

Detalii

Problema amat Operații I/O amat.in/amat.out
Limita timp 0.5 secunde Limita memorie Total: 64 MB / Stivă 8 MB
Id soluție #55077305 Utilizator 7B Radavoi David (David_Radavoi)
Fișier amat.c Dimensiune 3.57 KB
Data încărcării 20 Decembrie 2024, 20:26 Scor / rezultat 80 puncte

Evaluare


Mesaj compilare

amat.c: In function 'main':
amat.c:28:11: warning: ignoring return value of 'fscanf', declared with attribute warn_unused_result [-Wunused-result]
     fscanf(fin, "%d%d%d", &C, &N, &M);

           ^
amat.c:35:23: warning: ignoring return value of 'fscanf', declared with attribute warn_unused_result [-Wunused-result]
                 fscanf(fin, "%d", &m[i][j]);

                       ^
amat.c:85:23: warning: ignoring return value of 'fscanf', declared with attribute warn_unused_result [-Wunused-result]
                 fscanf(fin, "%d", &m[i][j]);

                       ^
amat.c:88:15: warning: ignoring return value of 'fscanf', declared with attribute warn_unused_result [-Wunused-result]
         fscanf(fin, "%d%d", &Q, &K);

               ^
amat.c:91:19: warning: ignoring return value of 'fscanf', declared with attribute warn_unused_result [-Wunused-result]
             fscanf(fin, "%d%d%d%d%d", &v[i].y1, &v[i].x1, &v[i].y2, &v[i].x2, &v[i].val);

                   ^

Rezultat evaluare

Test Timp Mesaj evaluare Scor posibil Scor obținut
1 0 secunde OK. 5 5
2 0 secunde OK. 5 5
3 0.004 secunde OK. 5 5
4 0.048 secunde OK. 5 5
5 0.088 secunde OK. 5 5
6 0.088 secunde OK. 5 5
7 0 secunde OK. 5 5
8 0 secunde OK. 5 5
9 0 secunde OK. 5 5
10 0.004 secunde OK. 5 5
11 0.004 secunde OK. 5 5
12 0.004 secunde OK. 5 5
13 0.104 secunde OK. 5 5
14 0.116 secunde OK. 5 5
15 0.128 secunde OK. 5 5
16 0.132 secunde Raspuns gresit. 5 0
17 0.176 secunde Raspuns gresit. 5 0
18 0.18 secunde Raspuns gresit. 5 0
19 0.208 secunde Raspuns gresit. 5 0
20 0.204 secunde OK. 5 5
Punctaj total 80

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