Detalii evaluare #36568799

Rezumat problemă

#4051 lumina

Se consideră un panou de dimensiuni \(n \times m\) pe care sunt așezate \(nm\) becuri. Becul de pe rândul \(i\) și coloana \(j\) se notează \((i,j)\). Inițial, fiecare bec este stins (\(0\)) sau aprins (\(1\)). Putem efectua următoarele comenzi de oricâte ori:

  • Se alege un rând \(i\) (\(1 \le i \le n\)) și se inversează starea tuturor becurilor de pe rândul \(i\) (\(0\rightarrow 1,1\rightarrow 0\));
  • Se alege o coloană \(j\) (\(1 \le j \le m\)) și se inversează starea tuturor becurilor de pe coloana \(j\) (\(0\rightarrow 1,1\rightarrow 0\)).

Găsiți o secvență cu un număr minim de comenzi care conduce la aprinderea tuturor becurilor.

Simulare concurs CEX Hunedoara, februarie 2022

Detalii

Problema lumina Operații I/O tastatură/ecran
Limita timp 0.1 secunde Limita memorie Total: 64 MB / Stivă 8 MB
Id soluție #36568799 Utilizator Fatul Alberto (Alberto2210)
Fișier lumina.cpp Dimensiune 1.26 KB
Data încărcării 09 Mai 2022, 19:27 Scor / rezultat 10 puncte

Evaluare


Mesaj compilare

lumina.cpp: In function 'int main()':
lumina.cpp:18:13: warning: unused variable 'i' [-Wunused-variable]
     int n,m,i,j,v[501],c=0,ord[501],x=0,d=0;

             ^
lumina.cpp:18:17: warning: unused variable 'v' [-Wunused-variable]
     int n,m,i,j,v[501],c=0,ord[501],x=0,d=0;

                 ^
lumina.cpp:18:28: warning: unused variable 'ord' [-Wunused-variable]
     int n,m,i,j,v[501],c=0,ord[501],x=0,d=0;

                            ^
lumina.cpp:18:37: warning: unused variable 'x' [-Wunused-variable]
     int n,m,i,j,v[501],c=0,ord[501],x=0,d=0;

                                     ^
lumina.cpp: In function 'void invers1(int, int, bool (*)[501])':
lumina.cpp:5:7: warning: 'j' may be used uninitialized in this function [-Wmaybe-uninitialized]
 { int j;

       ^
lumina.cpp: In function 'void invers2(int, int, bool (*)[501])':
lumina.cpp:12:21: warning: 'i' may be used uninitialized in this function [-Wmaybe-uninitialized]
         a[i][j]=!a[i][j];

                     ^
lumina.cpp: In function 'int main()':
lumina.cpp:12:21: warning: 'i' may be used uninitialized in this function [-Wmaybe-uninitialized]
lumina.cpp:10:7: note: 'i' was declared here
 { int i;

       ^

Rezultat evaluare

Test Timp Mesaj evaluare Scor posibil Scor obținut
1 0.016 secunde Raspuns gresit. 10 0
2 0.004 secunde Raspuns gresit. 10 0
3 0.004 secunde OK. 10 10
4 0.016 secunde Raspuns gresit. 10 0
5 0 secunde Raspuns gresit. 10 0
6 0.024 secunde Raspuns gresit. 10 0
7 0.008 secunde Raspuns gresit. 10 0
8 0.012 secunde Raspuns gresit. 10 0
9 0.012 secunde Raspuns gresit. 10 0
10 0 secunde Raspuns gresit. 10 0
Punctaj total 10

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