Cerința
În orașul Detroit s-a produs o spargere la un magazin de bijuterii. Infractorii au fugit de la locul faptei, iar polițiștii au reusit să facă rost doar de o poză neclară cu infractorii.
Cu ajutorul inteligenței artificiale reușesc să mărească acea imagine pentru a găsi niște detalii pentru a-i ajuta la rezolvarea cazului. Fii de partea binelui și ajută-i pe polițiști să rezolve acest caz!
Poza este reprezentată printr-o matrice cu n
linii și m
coloane, alcătuită din numere naturale. Polițiștii te roagă să-i ajuți, răspunzând la următoarele întrebări:
1) Dându-se o matrice reprezentând poza și un coeficient de mărire z
, construiește o altă matrice care să reprezinte poza mărită de z
ori.
2) Dându-se o matrice reprezentând poza, coeficientul de mărire z
și un șir perechi de coordonate din poza mărită, determină pentru fiecare pereche de coordonate valoarea din poza mărită.
Date de intrare
Fișierul de intrare zoom_poza.in
conține pe prima linie numărul c
, reprezentând întrebarea la care trebuie să răspunzi.
Pentru c=1
pe a doua linie se află numărul de linii n
și numărul de coloane m
, pe a treia linie factorul de al imaginii z
, iar pe următoarele n
linii și m
coloane poza sub forma unei matrici.
Pentru c=2
pe a doua linie se află numărul de linii n
și numărul de coloane m
, pe a treia linie factorul de al imaginii z
, iar pe următoarele n
linii și m
coloane poza sub forma unei matrici. Pe a patra linie se află k
– numărul de perchi de coordonate, iar pe următoarele k
linii câte două numere l1 c1
, reprezentând numărul de ordine al liniei, respectiv al coloanei pentru elementul cerut din matricea finală.
Date de ieșire
Fișierul de ieșire zoom_poza.out
va conține:
- pentru
c=1
imaginea mărită de către program, în dimensiune den*z
linii șim*z
coloane. - pentru
c=2
se vor afișa numerele aflate pe pozițiile date în poza mărită, separate printr-un spațiu.
Restricții și precizări
- Pentru
c=1
:1 ≤ n ≤ m ≤ 70
1 ≤ a[i][j] ≤ 100.000
1 ≤ z ≤ 10
- Pentru teste în valoare de 40 de puncte,
c=1
.
- Pentru
c=2
:- Pentru 20 de puncte:
1 ≤ n ≤ m ≤ 70
1 ≤ a[i][j] ≤ 100.000
1 ≤ z ≤ 10
1 ≤ k ≤ 1000
1 ≤ l1 ≤ c1 ≤ 2500
- Pentru 60 de puncte:
1 ≤ n ≤ m ≤ 50
1 ≤ a[i][j] ≤ 9•10
18
1 ≤ z ≤ 9•10
14
1 ≤ k ≤ 1.000
1 ≤ l1 ≤ c1 ≤ 9•10
18
- Pentru 20 de puncte:
- Se recomandă evitarea rezolvării din afișare!
Exemplul 1:
zoom_poza.in
1 2 3 3 1 2 3 4 5 6
zoom_poza.out
1 1 1 2 2 2 3 3 3 1 1 1 2 2 2 3 3 3 1 1 1 2 2 2 3 3 3 4 4 4 5 5 5 6 6 6 4 4 4 5 5 5 6 6 6 4 4 4 5 5 5 6 6 6
Exemplul 2:
zoom_poza.in
2 2 3 3 1 2 3 4 5 6 2 1 2 4 5
zoom_poza.out
1 5