#2070
Tablou
Se consideră un tablou cu N
linii şi N
coloane (numerotate de la 1
la N
) care conţine valoarea 1
în fiecare dintre cele NxN
celule. Valorile din tablou pot fi modificate prin aplicarea a două operații codificate astfel:
L nr
, prin care se schimbă simultan toate semnele numerelor din linia cu numărul nr
.C nr
, prin care se schimbă simultan toate semnele numerelor din coloana cu numărul nr
.Cerințe:
1) Dându-se o succesiune de K
operații (L nr
sau C nr
) asupra liniilor/coloanelor tabloului inițial (în care toate celulele conțin valoarea 1
) să se determine numărul valorilor pozitive din tablou la finalul executării celor K
operații.
2) Să se determine numărul minim de operații L nr
sau C nr
, care, aplicate tabloului inițial, îl modifică astfel încât tabloul obținut să conțină exact Z
valori negative.
Problema | Tablou | Operații I/O |
tablou.in /tablou.out
|
---|---|---|---|
Limita timp | 0.1 secunde | Limita memorie |
Total: 4 MB
/
Stivă 4 MB
|
Id soluție | #7393384 | Utilizator | |
Fișier | tablou.cpp | Dimensiune | 1.26 KB |
Data încărcării | 08 Decembrie 2017, 15:55 | Scor / rezultat | 60 puncte |
tablou.cpp: In function 'int main()': tablou.cpp:5:35: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)', declared with attribute warn_unused_result [-Wunused-result] freopen("tablou.in","r",stdin); ^ tablou.cpp:6:37: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)', declared with attribute warn_unused_result [-Wunused-result] freopen("tablou.out","w",stdout); ^ tablou.cpp:9:19: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] scanf("%d",&p); ^ tablou.cpp:11:33: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] scanf("%d%d%c",&n,&k,&c); ^ tablou.cpp:13:39: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] scanf("%c%c%d",&c,&c1,&nr); ^ tablou.cpp:18:27: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] scanf("%c",&c); ^ tablou.cpp:34:28: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] scanf("%d%d",&n,&z); ^
Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
---|---|---|---|---|---|---|
0 | 0 secunde | OK. | 5 | 5 | ||
1 | 0 secunde | OK. | 5 | 5 | ||
2 | 0 secunde | OK. | 5 | 5 | ||
3 | 0 secunde | OK. | 5 | 5 | ||
4 | 0 secunde | OK. | 5 | 5 | ||
5 | 0 secunde | OK. | 5 | 5 | ||
6 | 0 secunde | OK. | 5 | 5 | ||
7 | 0.008 secunde | OK. | 5 | 5 | ||
8 | 0.004 secunde | OK. | 5 | 5 | ||
9 | 0 secunde | OK. | 5 | 5 | ||
10 | 0 secunde | Raspuns gresit. | 5 | 0 | ||
11 | 0 secunde | Raspuns gresit. | 5 | 0 | ||
12 | 0 secunde | Raspuns gresit. | 5 | 0 | ||
13 | 0 secunde | Raspuns gresit. | 5 | 0 | ||
14 | 0 secunde | Raspuns gresit. | 5 | 0 | ||
15 | 0 secunde | Raspuns gresit. | 5 | 0 | ||
16 | 0 secunde | Raspuns gresit. | 5 | 0 | ||
17 | 0 secunde | Raspuns gresit. | 5 | 0 | ||
18 | 0 secunde | OK. | 5 | 5 | Exemplu | |
19 | 0 secunde | OK. | 3 | 3 | Exemplu | |
20 | 0 secunde | OK. | 2 | 2 | Exemplu | |
Punctaj total | 60 |
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Tablou face parte din prima categorie. Soluția propusă de tine va fi evaluată astfel:
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ă.