#include #include using namespace std; const int add[7][7]={{0,1,2,3,4,5,6},{1,2,3,4,5,6,0},{2,3,4,5,6,0,1},{3,4,5,6,0,1,2},{4,5,6,0,1,2,3},{5,6,0,1,2,3,4},{6,0,1,2,3,4,5}}; const int sub[7][7]={{0,1,2,3,4,5,6},{6,0,1,2,3,4,5},{5,6,0,1,2,3,4},{4,5,6,0,1,2,3},{3,4,5,6,0,1,2},{2,3,4,5,6,0,1},{1,2,3,4,5,6,0}}; const int mul[7][7]={{0,0,0,0,0,0,0},{0,1,2,3,4,5,6},{0,2,4,6,1,3,5},{0,3,6,2,5,1,4},{0,4,1,5,2,6,3},{0,5,3,1,6,4,2},{0,6,5,4,3,2,1}}; const int divd[7][7]={{9,9,9,9,9,9,9},{0,1,2,3,4,5,6},{0,4,1,5,2,6,3},{0,5,3,1,6,4,2},{0,2,4,6,1,3,5},{0,3,6,2,5,1,4},{0,6,5,4,3,2,1}}; const int dt[]={-1,-1,-1, 0, 0, 0, 1, 1, 1}; const int ds[]={-1, 0, 1,-1, 0, 1,-1, 0, 1}; int main(){ int a[225][225]; int b[225],borig[225]; int pos[225]; int N; ifstream cin("J.txt"); while(cin>>N && N){ const int NN=N*N; for(int i=0;i>b[i*N+k]; pos[i*N+k]=i*N+k; } } memcpy(borig,b,sizeof(int)*NN); for(int i=0;i=2){ int n=a[i][i]; for(int k=i;k=0;i--){ for(int k=0;k