Cerință
Se dă o matrice cu linii și coloane, inițial plină cu zero-uri. Se vor efectua operații de două tipuri:
- SUS col l1 l2 val
- JOS col l1 l2 val
O operație de tip SUS adaugă valoarea pe o fâșie verticală de lungime începând de la linia până la linia pe coloana . Pentru fiecare coloană din dreapta, fâșia se deplasează cu o unitate în sus (adică pe coloana fâșia va fi de la la , pe de la la etc.), până când fâșia nu mai încape în matrice.
O operație de tip JOS adaugă valoarea pe o fâșie verticală de lungime începând de la linia până la linia pe coloana . Pentru fiecare coloană din dreapta, fâșia se deplasează cu o unitate în jos (adică pe coloana fâșia va fi de la la , pe de la la etc.), până când fâșia nu mai încape în matrice.
După efectuarea tuturor operațiilor, se cere să se afișeze matricea rezultată.
Date de intrare
Prima linie conține trei numere întregi , , — dimensiunile matricei și numărul de operații.
Urmează linii, fiecare descriind o operație de forma:
S col l1 l2 val
sauJ col l1 l2 val
Date de ieșire
Se va afișa matricea rezultată, fiecare linie pe câte un rând, elementele separate prin spațiu.
Restricții
Subtask-uri
- Subtask 1 (20 puncte):
- Subtask 2 (35 puncte): ,
- Subtask 3 (45 puncte): ,
Exemplu
stdin
5 5 1
S 1 3 5 1
stdout
0 0 1 1 1
0 1 1 1 0
1 1 1 0 0
1 1 0 0 0
1 0 0 0 0
stdin
4 4 2
S 2 2 4 2
J 1 1 2 3
stdout
3 0 2 2
3 5 2 2
0 5 5 0
0 2 3 3