#include <iostream>
using namespace std;
int main() {
int N,d; //設定正方形邊長,起始方向
cin >> N;
int a[N][N];
cin >> d;
for(int i=0;i<N;i++)
{
for(int j=0;j<N;j++)
cin >> a[i][j]; //輸入數字 ,i j表示x y座標
}
int x=N/2,y=N/2; //設定中央項
cout << a[y][x];
for(int i=1;i<=N;i++) //規律是1 1,2 2,3 3,4 4....
{
if(i==N)
break;
for(int j=0;j<2;j++) //根據上面的註解 所以重複兩次
{
for(int l=0;l<i;l++) // 每走完一次轉彎
{
if(d==0)
x--;
else if(d==1)
y--;
else if(d==2)
x++;
else if(d==3)
y++;
cout << a[y][x];
}
d++;
if(d>=4)
d=0;
}
}
for(int i=0;i<N-1;i++) // 最後會多一小段,為N-1的長度
{
if(d==0)
x--;
else if(d==1)
y--;
else if(d==2)
x++;
else if(d==3)
y++;
cout << a[y][x];
}
return 0;
}