#include<cstdio>
#include<cmath>
#include<cstring>
#include<algorithm>
#define maxn 505
#define ll long long 
using namespace std;

const int fx[4][2]={{1,0},{0,1},{-1,0},{0,-1}};
int n,i,j,k,t,w;
int d[maxn*maxn][2],dis[maxn][maxn],bz[maxn][maxn];
int a[maxn][maxn],x,y;
ll ans;

int main(){
	scanf("%d",&n);
	for(i=1;i<=n;i++) for(j=1;j<=n;j++)
		dis[i][j]=min(min(i-1,j-1),min(n-i,n-j)),a[i][j]=1;
	for(i=1;i<=n*n;i++) {
		scanf("%d",&k),x=(k-1)%n+1,y=(k-1)/n+1;
		a[x][y]=0,t=0,w=1,d[w][0]=x,d[w][1]=y,bz[x][y]=1;
		ans+=dis[x][y];
		while (t<w){
			t++,x=d[t][0],y=d[t][1];
			for(k=0;k<4;k++){
				int xx=x+fx[k][0],yy=y+fx[k][1];
				if (xx>=1&&xx<=n&&yy>=1&&yy<=n){
					if (dis[x][y]+a[x][y]<dis[xx][yy]){
						dis[xx][yy]=dis[x][y]+a[x][y];
						if (!bz[xx][yy])
							w++,d[w][0]=xx,d[w][1]=yy,bz[xx][yy]=1;
					}
				}
			}
			bz[x][y]=0;
		} 
	}
	printf("%lld",ans);
}
