#include <iostream>
using namespace std;
/*
Pasii de implementare:
Declarăm “n” si coordonatele “x” si “y”.
Citim “n” “x” si “y”.
Declarăm și citim matricea.
Pentru a afla indicii primului element al diagonalei cerute,
cu ajutorul unei structuri repetitive, decrementam “x” și “y”
pana cand unul dintre ei ajung la valoarea “1”.
Cu ajutorul unei structuri repetitive
parcurgem diagonala cerută folosind noile valori a coordonatelor și o afisam.
*/
const int MAX_SIZE = 10;
int main() {
int n, x, y, mt[MAX_SIZE + 1][MAX_SIZE + 1];
cin >> n >> x >> y;
for (int i = 1; i <= n; ++i) {
for (int j = 1; j <= n; ++j) {
cin >> mt[i][j];
}
}
while (x >= 2 && y >= 2) {
--x;
--y;
}
for (int i = x, j = y; i <= n && j <= n; ++i, ++j) {
cout << mt[i][j] << " ";
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwovKgpQYXNpaSBkZSBpbXBsZW1lbnRhcmU6CkRlY2xhcsSDbSDigJxu4oCdIHNpIGNvb3Jkb25hdGVsZSDigJx44oCdIHNpIOKAnHnigJ0uCkNpdGltIOKAnG7igJ0g4oCceOKAnSBzaSDigJx54oCdLgpEZWNsYXLEg20gyJlpIGNpdGltIG1hdHJpY2VhLgpQZW50cnUgYSBhZmxhIGluZGljaWkgcHJpbXVsdWkgZWxlbWVudCBhbCBkaWFnb25hbGVpIGNlcnV0ZSwgCmN1IGFqdXRvcnVsIHVuZWkgc3RydWN0dXJpIHJlcGV0aXRpdmUsIGRlY3JlbWVudGFtIOKAnHjigJ0gyJlpIOKAnHnigJ0gCnBhbmEgY2FuZCB1bnVsIGRpbnRyZSBlaSBhanVuZyBsYSB2YWxvYXJlYSDigJwx4oCdLgoKQ3UgYWp1dG9ydWwgdW5laSBzdHJ1Y3R1cmkgcmVwZXRpdGl2ZSAKcGFyY3VyZ2VtIGRpYWdvbmFsYSBjZXJ1dMSDIGZvbG9zaW5kIG5vaWxlIHZhbG9yaSBhIGNvb3Jkb25hdGVsb3IgyJlpIG8gYWZpc2FtLgoqLwoKY29uc3QgaW50IE1BWF9TSVpFID0gMTA7CgppbnQgbWFpbigpIHsKCWludCBuLCB4LCB5LCBtdFtNQVhfU0laRSArIDFdW01BWF9TSVpFICsgMV07CgljaW4gPj4gbiA+PiB4ID4+IHk7Cglmb3IgKGludCBpID0gMTsgaSA8PSBuOyArK2kpIHsKCQlmb3IgKGludCBqID0gMTsgaiA8PSBuOyArK2opIHsKCQkJY2luID4+IG10W2ldW2pdOwoJCX0KCX0KCXdoaWxlICh4ID49IDIgJiYgeSA+PSAyKSB7CgkJLS14OwoJCS0teTsKCX0KCWZvciAoaW50IGkgPSB4LCBqID0geTsgaSA8PSBuICYmIGogPD0gbjsgKytpLCArK2opIHsKCQljb3V0IDw8IG10W2ldW2pdIDw8ICIgIjsKCX0KCXJldHVybiAwOwp9