#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define ld long double
#define decimal(x) cout<<fixed<<setprecision(x)
#define fast ios_base::sync_with_stdio(0), cin.tie(0), cout.tie(0)
int n, dist[505][505];
bool seat[505][505];
int movex[]={0, 1, 0, -1};
int movey[]={1, 0, -1, 0};
void upd(int x, int y){
	int nw=dist[x][y];
	if(seat[x][y]) nw++;
	for(int move=0; move<4; move++){
		int nx=x+movex[move], ny=y+movey[move];
		if(dist[nx][ny]>nw){
			dist[nx][ny]=nw;
			upd(nx, ny);
		}
	}
}
int main(){ fast;
	cin>>n;
	for(int i=1; i<=n; i++) for(int j=1; j<=n; j++){
		seat[i][j]=true;
		dist[i][j]=min(min(i, n+1-i), min(j, n+1-j))-1;
	}
	int rs=0;
	for(int i=0; i<n*n; i++){
		int nw; cin>>nw;
		int x=(nw+n-1)/n, y=nw%n;
		if(y==0) y=n;
		rs+=dist[x][y];
		seat[x][y]=false;
		upd(x, y);
	}
	cout<<rs<<endl;
}