Sunteți pe pagina 1din 1

OLIMPIADA NAIONAL DE INFORMATIC Piatra-Neam, 15-22 aprilie 2011 Proba 2 Clasa a X -a Sursa: acces.c, acces.cpp, acces.

pas

acces

100 puncte

Considerm o matrice cu L linii (numerotate de sus n jos de la 1 la L) i C coloane (numerotate de la stnga la dreapta de la 1 la C) care memoreaz doar valori 0 i 1. Mai mult, valorile egale cu 1 sunt grupate n mai multe dreptunghiuri pline, care nu se nvecineaz nici pe linii, nici pe coloane, nici pe diagonale. n exemplul din fig. 1 matricea este corect deoarece cele 4 dreptunghiuri de 1 nu se nvecineaz. n schimb n fig. 2 exist 2 dreptunghiuri de 1 nvecinate pe coloan i dou nvecinate pe diagonal, deci matricea este incorect.
0 0 0 0 0 0 1 1 1 0 0 1 1 1 0 0 0 0 0 0 1 1 0 1 1 1 1 0 0 0 1 1 0 0 1 0 0 0 0 1 0 1 1 1 0 0 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 1 1 0 0 0

fig. 1

fig. 2

n aceast matrice se pot face deplasri doar pe direciile Vest i Nord n elemente egale cu 0, deci din poziia (i,j) se poate ajunge doar ntr-una din poziiile (i,j-1) i (i-1,j), marcate cu 0. n acest fel, pornind de la o anumit poziie, prin deplasri succesive, pot fi accesate un anumit numr de elemente ale matricei egale cu 0. De exemplu, n fig. 1, din poziia (2,4) pot fi accesate 5 componente egale cu 0, iar din poziia (5,4) pot fi accesate 14 componente egale cu 0. Trebuie s rspundei la Q ntrebri, fiecare ntrebare fiind de forma: Cte din elementele egale cu zero ale matricei pot fi accesate din poziia (i,j) ?

Cerin
Scriei un program care s determine, pentru fiecare ntrebare, cte elemente egale cu 0 din matrice pot fi accesate din poziia precizat n cadrul ntrebrii.

Date de intrare
Pe prima linie a fiierului acces.in se afl dou numere naturale L i C separate printr-un spaiu, reprezentnd numrul liniilor, respectiv numrul coloanelor matricei. Pe urmtoarele L linii se gsesc cte C cifre binare, separate prin cte un spaiu, reprezentnd elementele matricei. Pe linia urmtoare se afl numrul natural Q, reprezentnd numrul ntrebrilor. Pe urmtoarele Q linii se gsesc cte dou numere naturale i i j, separate prin cte un spaiu, reprezentnd poziia corespunztoare unei ntrebri.

Date de ieire
Fiierul acces.out conine Q linii. Pe linia p (1 p Q) se afl un numr natural kp reprezentnd rspunsul la cea de-a p-a ntrebare.

Restricii i precizri 4 L, C 1000 3 Q 500 000 Pentru orice ntrebare i j se garanteaz c valoarea corespunztoare din matrice este 0.
pentru toate testele, dreptunghiurile formate din valori de 1 nu se nvecineaz
acces.out 5 14 11 3 Explicaii Pentru prima ntrebare, cele 5 componente egale cu 0 care pot fi accesate sunt cele din poziiile (1,1), (1, 2), (1,3), (1,4), (2,4)

Exemple
acces.in 5 7 0 0 0 0 1 0 1 1 0 1 0 1 1 0 0 0 1 1 0 1 0 0 0 0 1 4 2 4 5 4 4 7 3 1 1 1 0 0 0 1 1 0 0 1

Timp maxim de execuie/test: 1,5 secunde. Memorie total disponibil: 16 MB Dimensiune maxim a sursei: 5 KB

S-ar putea să vă placă și