#2505
jocxzero
Pe o foaie dintr-un caiet de matematică de dimensiune N x M
(N
numărul de linii și M
numărul de coloane) sunt completate toate pătrățelele cu X
sau 0
. Pentru un număr natural K
dat, numim șir corect, o secvență de K
elemente consecutive pe linie, coloană sau diagonale care au aceeași valoare (X
sau 0
). Două pătrățele de pe foaie sunt vecine pe aceeași diagonală dacă au un singur colț comun.
Exemplu din figura alăturată, pentru care N=4
, M=5
, K=3
conține 6
șiruri corecte de X
și 5
șiruri corecte de 0
.
Cerințe:
N
, M
și K
și o foaie de matematică plină cu X
și 0
. Determinați câte șiruri corecte de X
și câte șiruri corecte de 0
se găsesc pe foaia dată.Q
întrebări de forma A B
, în care A
este caracterul X
sau 0
și B
este un număr natural. Determinați în câte moduri putem tăia foaia de matematica vertical pentru a obține în subtabloul din partea stângă exact B
șiruri corecte de A
. Foia se poate tăia în M -1
variante: după prima coloană, a doua coloană, după a treia coloană, ș.a.m.d, până după penultima coloană.ONIG 2018
Problema | jocxzero | Operații I/O |
jocxzero.in /jocxzero.out
|
---|---|---|---|
Limita timp | 0.7 secunde | Limita memorie |
Total: 64 MB
/
Stivă 32 MB
|
Id soluție | #44239079 | Utilizator | |
Fișier | jocxzero.cpp | Dimensiune | 2.78 KB |
Data încărcării | 18 Iulie 2023, 12:01 | Scor / rezultat | 100 puncte |
jocxzero.cpp: In function 'int main()': jocxzero.cpp:46:9: warning: 'char* gets(char*)' is deprecated (declared at /usr/include/stdio.h:638) [-Wdeprecated-declarations] { gets(s); ^ jocxzero.cpp:46:15: warning: 'char* gets(char*)' is deprecated (declared at /usr/include/stdio.h:638) [-Wdeprecated-declarations] { gets(s); ^ In file included from /usr/include/c++/4.8/cassert:43:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:33, from jocxzero.cpp:1: jocxzero.cpp:47:27: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] assert(strlen(s)==M); ^ jocxzero.cpp:41:40: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)', declared with attribute warn_unused_result [-Wunused-result] freopen ("jocxzero.in", "r", stdin); ^ jocxzero.cpp:42:42: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)', declared with attribute warn_unused_result [-Wunused-result] freopen ("jocxzero.out", "w", stdout); ^ jocxzero.cpp:43:43: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] scanf("%d\n%d %d %d\n",&C, &N, &M, &K); ^ jocxzero.cpp:46:16: warning: ignoring return value of 'char* gets(char*)', declared with attribute warn_unused_result [-Wunused-result] { gets(s); ^ jocxzero.cpp:90:25: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] scanf("%d\n",&Q); ^ jocxzero.cpp:93:37: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] scanf("%c %d\n", &A, &B); ^ jocxzero.cpp: In function 'int cbL(int, int)': jocxzero.cpp:37:17: warning: 'poz' may be used uninitialized in this function [-Wmaybe-uninitialized] if (t[i][poz] == nr) return poz; else return 0; ^ jocxzero.cpp: In function 'int main()': jocxzero.cpp:37:17: warning: 'poz' may be used uninitialized in this function [-Wmaybe-uninitialized] jocxzero.cpp:26:31: note: 'poz' was declared here int st=1,dr = M - 1, mij, poz; ^ /tmp/ccfKzNMY.o: In function \`main': jocxzero.cpp:(.text.startup+0xc8): warning: the \`gets' function is dangerous and should not be used.
Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
---|---|---|---|---|---|---|
0 | 0.004 secunde | OK. | 5 | 5 | ||
1 | 0.02 secunde | OK. | 5 | 5 | ||
2 | 0 secunde | OK. | 5 | 5 | ||
3 | 0.032 secunde | OK. | 5 | 5 | ||
4 | 0.004 secunde | OK. | 5 | 5 | ||
5 | 0.004 secunde | OK. | 5 | 5 | ||
6 | 0.004 secunde | OK. | 5 | 5 | ||
7 | 0.016 secunde | OK. | 5 | 5 | ||
8 | 0.016 secunde | OK. | 5 | 5 | ||
9 | 0.048 secunde | OK. | 5 | 5 | ||
10 | 0 secunde | OK. | 5 | 5 | ||
11 | 0 secunde | OK. | 5 | 5 | ||
12 | 0 secunde | OK. | 5 | 5 | ||
13 | 0.004 secunde | OK. | 5 | 5 | ||
14 | 0.032 secunde | OK. | 5 | 5 | ||
15 | 0.04 secunde | OK. | 5 | 5 | ||
16 | 0.04 secunde | OK. | 5 | 5 | ||
17 | 0.04 secunde | OK. | 5 | 5 | ||
18 | 0.056 secunde | OK. | 5 | 5 | ||
19 | 0.06 secunde | OK. | 5 | 5 | ||
Punctaj total | 100 |
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema jocxzero 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ă.