#3376
asciimat
Se dă un şir de caractere S
format din litere mari şi mici ale alfabetului englez, spaţii şi caracterul ⌂
ce are codul ASCII 127
. Fiecare caracter al lui S
se codifică printr-o succesiune de 1
şi 0
ce reprezintă codul ASCII al caracterului în baza 2
. Codul începe cu cifra 1
, astfel pentru caracterul A
codificarea este 1000001
. Un cuvânt poate fi format din litere şi caracterul ⌂
. Se consideră matricea M
formată din cuvintele șirului S
codificate şi memorate pe câte o linie în ordinea în care se găsesc acestea în propoziție. Scrieţi un program care, cunoscând S
şi K
, rezolvă următoarele două cerinţe:
1. determină L
, latura celui mai mare pătrat din matricea M
ce conține doar valori de 1
;
2. determină NR
, câte pătrate de latura K
cu toate elementele egale cu 1
există în matricea M
.
Olimpiada Municipala de Informatica, Iasi, 2020
Problema | asciimat | Operații I/O |
asciimat.in /asciimat.out
|
---|---|---|---|
Limita timp | 0.1 secunde | Limita memorie |
Total: 2 MB
/
Stivă 1 MB
|
Id soluție | #42734069 | Utilizator | |
Fișier | asciimat.cpp | Dimensiune | 1.95 KB |
Data încărcării | 15 Martie 2023, 18:38 | Scor / rezultat | 50 puncte |
asciimat.cpp: In function 'int main()': asciimat.cpp:32:31: warning: array subscript has type 'char' [-Wchar-subscripts] m[y][x+0] = f[c[i]][6]; ^ asciimat.cpp:33:31: warning: array subscript has type 'char' [-Wchar-subscripts] m[y][x+1] = f[c[i]][5]; ^ asciimat.cpp:34:31: warning: array subscript has type 'char' [-Wchar-subscripts] m[y][x+2] = f[c[i]][4]; ^ asciimat.cpp:35:31: warning: array subscript has type 'char' [-Wchar-subscripts] m[y][x+3] = f[c[i]][3]; ^ asciimat.cpp:36:31: warning: array subscript has type 'char' [-Wchar-subscripts] m[y][x+4] = f[c[i]][2]; ^ asciimat.cpp:37:31: warning: array subscript has type 'char' [-Wchar-subscripts] m[y][x+5] = f[c[i]][1]; ^ asciimat.cpp:38:31: warning: array subscript has type 'char' [-Wchar-subscripts] m[y][x+6] = f[c[i]][0]; ^
Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
---|---|---|---|---|---|---|
1 | 0.008 secunde | OK. | 10 | 10 | ||
2 | 0.008 secunde | Raspuns gresit. | 10 | 0 | ||
3 | 0.012 secunde | Raspuns gresit. | 10 | 0 | ||
4 | 0 secunde | Raspuns gresit. | 10 | 0 | ||
5 | 0 secunde | OK. | 10 | 10 | ||
6 | 0 secunde | Raspuns gresit. | 10 | 0 | ||
7 | 0 secunde | Raspuns gresit. | 10 | 0 | ||
8 | 0 secunde | OK. | 15 | 15 | ||
9 | 0 secunde | OK. | 15 | 15 | ||
Punctaj total | 50 |
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema asciimat 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ă.