#include<iostream>
using namespace std;

int n;
int mapp[505][505];
int vis[505][505]={0};
int p[500005];
int dx[4]={0,0,1,-1};
int dy[4]={1,-1,0,0};
void bef(){
	for(int i=1;i<=n;i++){
		for(int j=1;j<=n;j++){
			mapp[i][j]=min(i-1,min(j-1,min(n-i,n-j)));
//			cout<<mapp[i][j]<<" ";
		}
//		cout<<endl;
	}
	return;
}
void dfs(int x,int y){
	for(int i=0;i<4;i++){
		int tx=x+dx[i];
		int ty=y+dy[i];
		if(tx>=1&&tx<=n&&ty>=1&&ty<=n){
			if(mapp[tx][ty]>mapp[x][y]+vis[x][y]+1){
				mapp[tx][ty]=mapp[x][y]+vis[x][y]+1;
				dfs(tx,ty);
			}
		}
	}
	return;
}

int main()
{
	ios::sync_with_stdio(false);
	cin>>n;
	bef();
	for(int i=1;i<=n*n;i++){
		cin>>p[i];
	}
	int sum=0;
	for(int i=1;i<=n*n;i++){
		int x=(p[i]+n-1)/n;
		int y=(p[i]%n==0)?n:(p[i]%n);
		sum+=mapp[x][y];
		vis[x][y]=-1;
		dfs(x,y);
	}
	cout<<sum<<endl;
	return 0;
}