Considerăm o matrice cu linii (numerotate de sus în jos de la la ) şi coloane (numerotate de la stânga la dreapta de la la ) care memorează doar valori şi . Mai mult, valorile egale cu 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 dreptunghiuri de nu se învecinează. În schimb în fig. 2 există dreptunghiuri de învecinate pe coloană şi două învecinate pe diagonală, deci matricea este incorectă.
În această matrice se pot face deplasări doar pe direcţiile Vest şi Nord în elemente egale cu , deci din poziţia se poate ajunge doar într-una din poziţiile şi , marcate cu . În acest fel, pornind de la o anumită poziţie, prin deplasări succesive, pot fi accesate un anumit număr de elemente ale matricei egale cu . De exemplu, în fig. 1, din poziţia pot fi accesate componente egale cu , iar din poziţia pot fi accesate componente egale cu .
Trebuie să răspundeţi la întrebări, fiecare întrebare fiind de forma: “Câte din elementele egale cu zero ale matricei pot fi accesate din poziţia ?”
Cerinţă
Scrieţi un program care să determine, pentru fiecare întrebare, câte elemente egale cu 0 din matrice pot fi accesate din poziţia precizată în cadrul întrebării.
Date de intrare
Pe prima linie a fişierului acces.in
se află două numere naturale şi separate printr-un spaţiu, reprezentând numărul liniilor, respectiv numărul coloanelor matricei. Pe următoarele linii se găsesc câte cifre binare, separate prin câte un spaţiu, reprezentând elementele matricei. Pe linia următoare se află numărul natural , reprezentând numărul întrebărilor. Pe următoarele linii se găsesc câte două numere naturale şi , separate prin câte un spaţiu, reprezentând poziţia corespunzătoare unei întrebări.
Date de ieșire
Fişierul acces.out
conţine linii. Pe linia se află un număr natural reprezentând răspunsul la cea de-a -a întrebare.
Restricții și precizări
- Pentru orice întrebare se garantează că valoarea corespunzătoare din matrice este .
- pentru toate testele, dreptunghiurile formate din valori de nu se învecinează
Exemplu
acces.in
5 7
0 0 0 0 1 1 1
0 1 1 0 1 1 1
0 1 1 0 0 0 0
0 1 1 0 1 0 0
0 0 0 0 1 0 1
4
2 4
5 4
4 7
3 1
acces.out
5
14
11
3
Explicație
Pentru prima întrebare, cele componente egale cu care pot fi accesate sunt cele din poziţiile .