#include using namespace std; inline int read(){ int x=0,f=1;char cc=getchar(); while(cc<'0' || cc>'9') {if(cc=='-') f=-1;cc=getchar();} while(cc>='0' && cc<='9') {x=x*10+cc-'0';cc=getchar();} return x*f; } int f[510][510],num[4],n,x,y,a[510][510]; int main(){ for(int tt=read();tt;tt--){ n=read();x=read();y=read(); for(int i=1;i<=n;i++) for(int j=1;j<=n;j++) a[i][j]=read(); for(int i=1;i<=n;i++)for(int j=1;j<=n;j++){ num[1]=num[2]=num[3]=0; for(int l=-3;l<=3;l++)for(int r=-3;r<=3;r++) if(abs(l)+abs(r)<=3 && (l!=0 || r!=0) && i+l>=1 && i+l<=n && j+r>=1 && j+r<=n) num[a[i+l][j+r]]++; f[i][j]=0;int tmp=0;int r=1;int sum=a[i][j];int t=3; while(r<9){ f[i][j]++; tmp+=sum; if(tmp>=8*r*r){ r++; while(t>=1 && num[t]==0) t--; if(t>=0)num[t]--; sum+=t; } } } int ans=1000000; for(int i=1;i<=n;i++)for(int j=1;j<=n;j++) ans=min(ans,(abs(i-x)+abs(j-y)+1)/2+f[i][j]); printf("%d\n",ans); } }