#include #include #include #include #include using namespace std; #define ll long long int ll read(){ char ch=getchar(); ll sum=0; bool ttt=false; while(!isdigit(ch)) ttt=(ch=='-'),ch=getchar(); while(isdigit(ch)) sum=(sum<<3)+(sum<<1)+(ch-'0'),ch=getchar(); return ttt?-sum:sum; } int tst; int n,sx,sy,ans; int a[550][550]; int f[550][550][4]; int dv(int x, int y){ if(x%y) return x/y+1; return x/y; } int ppp(int x,int y){ int dx=abs(x-sx),dy=abs(y-sy); return dv(dx+dy,2); } int main(){ tst=read(); for(int i=1;i<=tst;i++){ memset(f,0,sizeof(f)); n=read(),sx=read(),sy=read(),ans=0x7fffffff; 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++){ for(int k=-3;k<=3;k++){ int x=i+k; if(x<1||x>n) continue; for(int y=j-3+abs(k);y<=j+3-abs(k);y++){ if(y<1||y>n) continue; f[i][j][a[x][y]]++; } } int tms=0,sum=0,sps=a[i][j],cnt=1,usd[4]={0}; usd[sps]++; while(cnt<9){ int tmp=dv((cnt*cnt<<3)-sum,sps); tms+=tmp,sum+=tmp*sps,cnt++; for(int k=3;k>=1;k--){ if(usd[k]