//agrawal117
//chahatagrawal117
#include<bits/stdc++.h>
#define endl '\n'
#define mod 1000000007
typedef long long int ll;
using namespace std;
#define MAX 505
int arr[505][505];
int vis[505][505];
const int dx[]={1,-1,0,0};
const int dy[]={0,0,1,-1};
int n;
void dfs(int x, int y)
{
    int cost=arr[x][y]+vis[x][y];
    for(int i=0;i<4;i++){
        int xx=x+dx[i]; int yy=y+dy[i];
        if(xx<0 || xx>=n || yy<0 || yy>=n) continue;
        if(arr[xx][yy]>cost){
            arr[xx][yy]=cost;
            dfs(xx,yy);
        }
    }
    
}
int main()
{
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);
    cin>>n;
    for(int i=0;i<n;i++){
        for(int j=0;j<n;j++){
            arr[i][j]=min(min(i,n-i-1),min(j,n-j-1));
            vis[i][j]=1;
        }
    }
    ll ans=0;
    for(int i=1;i<=n*n;i++){
        int node;
        cin>>node; node--;
        int x=node/n; int y=node%n;
        ans+=arr[x][y];
        vis[x][y]=0;
        dfs(x,y);
    }
    cout<<ans<<endl;
}