#include<iostream> #include<cstring> #include<algorithm> using namespace std; int main(){ int n,x; while(cin>>n){ cin>>x; int a[n][n]={0}; for(int i=0;i<n;i++){ for(int j=0;j<n;j++){ cin>>a[i][j]; } } int t=1,cx=0,cy=0,b=0; cout<<a[(n-1)/2][(n-1)/2]; if(x==0){ cx=(n-1)/2; cy=(n-1)/2; while(true){ if(t==n-1){ if(b%2==0){ for(int i=0;i<t;i++){ cy-=1; cout<<a[cx][cy]; } for(int i=0;i<t;i++){ cx-=1; cout<<a[cx][cy]; } for(int i=0;i<t;i++){ cy+=1; cout<<a[cx][cy]; } t++; b++; } else { for(int i=0;i<t;i++){ cy+=1; cout<<a[cx][cy]; } for(int i=0;i<t;i++){ cx+=1; cout<<a[cx][cy]; } for(int i=0;i<t;i++){ cy-=1; cout<<a[cx][cy]; } t++; b++; } cout<<endl; break; } else { if(b%2==0){ for(int i=0;i<t;i++){ cy-=1; cout<<a[cx][cy]; } for(int i=0;i<t;i++){ cx-=1; cout<<a[cx][cy]; } t++; b++; } else { for(int i=0;i<t;i++){ cy+=1; cout<<a[cx][cy]; } for(int i=0;i<t;i++){ cx+=1; cout<<a[cx][cy]; } t++; b++; } } } } else if(x==1){ cx=(n-1)/2; cy=(n-1)/2; while(true){ if(t==n-1){ if(b%2!=0){ for(int i=0;i<t;i++){ cx+=1; cout<<a[cx][cy]; } for(int i=0;i<t;i++){ cy-=1; cout<<a[cx][cy]; } for(int i=0;i<t;i++){ cx-=1; cout<<a[cx][cy]; } t++; b++; } else { for(int i=0;i<t;i++){ cx-=1; cout<<a[cx][cy]; } for(int i=0;i<t;i++){ cy+=1; cout<<a[cx][cy]; } for(int i=0;i<t;i++){ cx+=1; cout<<a[cx][cy]; } t++; b++; } cout<<endl; break; } else { if(b%2==0){ for(int i=0;i<t;i++){ cx-=1; cout<<a[cx][cy]; } for(int i=0;i<t;i++){ cy+=1; cout<<a[cx][cy]; } t++; b++; } else { for(int i=0;i<t;i++){ cx+=1; cout<<a[cx][cy]; } for(int i=0;i<t;i++){ cy-=1; cout<<a[cx][cy]; } t++; b++; } } } } else if(x==2){ cx=(n-1)/2; cy=(n-1)/2; while(true){ if(t==n-1){ if(b%2!=0){ for(int i=0;i<t;i++){ cy-=1; cout<<a[cx][cy]; } for(int i=0;i<t;i++){ cx-=1; cout<<a[cx][cy]; } for(int i=0;i<t;i++){ cy+=1; cout<<a[cx][cy]; } t++; b++; } else { for(int i=0;i<t;i++){ cy+=1; cout<<a[cx][cy]; } for(int i=0;i<t;i++){ cx+=1; cout<<a[cx][cy]; } for(int i=0;i<t;i++){ cy-=1; cout<<a[cx][cy]; } t++; b++; } cout<<endl; break; } else { if(b%2==0){ for(int i=0;i<t;i++){ cy+=1; cout<<a[cx][cy]; } for(int i=0;i<t;i++){ cx+=1; cout<<a[cx][cy]; } t++; b++; } else { for(int i=0;i<t;i++){ cy-=1; cout<<a[cx][cy]; } for(int i=0;i<t;i++){ cx-=1; cout<<a[cx][cy]; } t++; b++; } } } } else if(x==3){ cx=(n-1)/2; cy=(n-1)/2; while(true){ if(t==n-1){ if(b%2!=0){ for(int i=0;i<t;i++){ cx-=1; cout<<a[cx][cy]; } for(int i=0;i<t;i++){ cy+=1; cout<<a[cx][cy]; } for(int i=0;i<t;i++){ cx+=1; cout<<a[cx][cy]; } t++; b++; } else { for(int i=0;i<t;i++){ cx+=1; cout<<a[cx][cy]; } for(int i=0;i<t;i++){ cy-=1; cout<<a[cx][cy]; } for(int i=0;i<t;i++){ cx-=1; cout<<a[cx][cy]; } t++; b++; } cout<<endl; break; } else { if(b%2==0){ for(int i=0;i<t;i++){ cx+=1; cout<<a[cx][cy]; } for(int i=0;i<t;i++){ cy-=1; cout<<a[cx][cy]; } t++; b++; } else { for(int i=0;i<t;i++){ cx-=1; cout<<a[cx][cy]; } for(int i=0;i<t;i++){ cy+=1; cout<<a[cx][cy]; } t++; b++; } } } } } } //0代表左 、1代表上 、2代表右 、3代表下