== include(page="template/taskheader" task_id="memcpy") ==
Fie o matrice de dimensiuni $1000x1000$ cu elemente distincte. Dorim ca în această matrice să copiem submatricea de dimensiuni $N x M$ care are colţul stânga jos în $(X, Y)$ peste submatricea de dimensiuni $N x M$ care are colţul stânga jos în $(NEW_X, NEW_Y)$. Este necesar ca acest lucru să se realizeze folosind $N x M$ atribuiri de tipul $A[x][y] = A[z][t]$. În ce ordine pot fi făcute aceste atribuiri pentru a copia corect submatricea?
Fie o matrice de dimensiuni $2000x2000$ cu elemente distincte. Dorim ca în această matrice să copiem submatricea de coordonate ((x_jos,y_jos), (x_sus,y_sus)) la coordonatele ((newx_jos, newy_jos), (newx_sus, newx_jos)) folosind un număr minim de atribuiri. În ce ordine trebuie făcute aceste atribuiri?
h2. Date de intrare
Fişierul de intrare $memcpy.in$ va conţine pe o singură linie $6$ numere: $N, M, X, Y, NEW_X, NEW_Y$. Acestea reprezintă dimensiunea submatricei, coordonatele colţului stânga jos pentru poziţia iniţială a submatricei, respectiv pentru poziţia finală.
Fişierul de intrare $memcpy.in$ ...
h2. Date de ieşire
În fişierul de ieşire $memcpy.out$ se vor afla $NxM$ linii, fiecare conţinând câte o pereche de numere. Dacă linia $i$ conţine perechea $(a, b)$ atunci celula cu coordonatele $(a, b)$ va fi copiată la momentul $i$. Se observă că destinaţia de copiere pentru această celulă este unică. În consecinţă, nu va fi specificată.
În fişierul de ieşire $memcpy.out$ ...
h2. Restricţii
* $1 ≤ N, M ≤ 500$
* $Toate coordonatele citite sau afişate se vor afla în intervalul [1, 1000].$
* $Submatricele descrise în input vor fi incluse complet în matrice.$
* $... ≤ ... ≤ ...$
h2. Exemplu