#2434
tnia
Se dă o matrice binară cu n
coloane și m
linii. Coloanele sunt numerotate de la stânga la dreapta cu valori de la 1
la n
, iar liniile sunt numerotate de jos în sus cu valori de la 1
la m
.
Matricea dată are o formă particulară, astfel că pentru fiecare coloană i
de la 1
la n
toate elementele matricei de pe coloana respectivă au valoarea 1
pentru toate liniile cuprinse în intervalul [1, h[i]]
și în rest valoarea 0
. Valorile h[i]
sunt numere naturale date în ordine crescătoare (h[i-1] ≤ h[i]
, 1 ≤ i ≤ n
).
Să se răspundă la q
întrebări de forma: dându-se numerele A, B, C, D
se cere suma elementelor din submatricea determinată de zona dreptunghiulară având colțul stânga-jos în coloana A
și linia B
, iar colțul dreapta-sus în coloana C
și linia D
.
OJI 2018
Problema | tnia | Operații I/O |
tnia.in /tnia.out
|
---|---|---|---|
Limita timp | 0.7 secunde | Limita memorie |
Total: 128 MB
/
Stivă 32 MB
|
Id soluție | #48663792 | Utilizator | |
Fișier | tnia.cpp | Dimensiune | 717 B |
Data încărcării | 01 Februarie 2024, 12:41 | Scor / rezultat | Eroare de compilare |
tnia.cpp:6:39: error: size of array 's' is too large long long n,i,j,m,s[1000000001][100001],q,h[100001],sf,w,a,b,c,d,v[1000000001][100001]; ^ tnia.cpp:6:86: error: size of array 'v' is too large long long n,i,j,m,s[1000000001][100001],q,h[100001],sf,w,a,b,c,d,v[1000000001][100001]; ^ tnia.cpp: In function 'int main()': tnia.cpp:15:13: error: 's' was not declared in this scope s[j][i]=1; ^ tnia.cpp:19:9: error: 's' was not declared in this scope s[0][i]=0; ^ tnia.cpp:21:9: error: 's' was not declared in this scope s[i][0]=0; ^ tnia.cpp:25:9: error: 'v' was not declared in this scope v[i][j]=s[i][j]+v[i-1][j]+v[i][j-1]-v[i-1][j-1]; ^ tnia.cpp:25:17: error: 's' was not declared in this scope v[i][j]=s[i][j]+v[i-1][j]+v[i][j-1]-v[i-1][j-1]; ^ tnia.cpp:31:15: error: 'v' was not declared in this scope fout<<v[d][c]-v[b-1][c]-v[d][a-1]+v[b-1][a-1]<<'\n'; ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema tnia 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ă.