#include<iostream>
#include<stdio.h>
#include<stdlib.h>
using namespace std;
int n,cols,empty,board[10][10],sum=0,hi;
void set(int i,int j,int count){
if(i<0 || i>=10 || j<0 || j>=10 || board[i][j] == 0)
return;
int ans = 0;
board[i][j] = 0;//unsets the (i,j) cell
hi = max(hi,count+1);//hi stores the maximum of value of visited squares
//try all 8 possible moves for knight
set(i-1,j-2,count+1);
set(i-2,j-1,count+1);
set(i+1,j-2,count+1);
set(i+2,j-1,count+1);
set(i-1,j+2,count+1);
set(i-2,j+1,count+1);
set(i+1,j+2,count+1);
set(i+2,j+1,count+1);
board[i][j] = 1;//sets (i,j) cell again(backtracking)
}
int main(){
// freopen("input.txt","r",stdin);
cin>>n;
sum = 0;
for(int i=0;i<n;i++){
for(int j=0;j<n;j++){
cin>>board[i][j];
if(board[i][j])
sum++; // sum stroes total number of valid cells on chessboard
}
}
hi=0;
set(0,0,0);
cout<<sum-hi<<"\n";
return 0;
}
I2luY2x1ZGU8aW9zdHJlYW0+CiNpbmNsdWRlPHN0ZGlvLmg+CiNpbmNsdWRlPHN0ZGxpYi5oPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IG4sY29scyxlbXB0eSxib2FyZFsxMF1bMTBdLHN1bT0wLGhpOwoKdm9pZCBzZXQoaW50IGksaW50IGosaW50IGNvdW50KXsKICAgIGlmKGk8MCB8fCBpPj0xMCB8fCBqPDAgfHwgaj49MTAgfHwgYm9hcmRbaV1bal0gPT0gMCkKICAgICAgICByZXR1cm47CiAgICBpbnQgYW5zID0gMDsKICAgIGJvYXJkW2ldW2pdID0gMDsvL3Vuc2V0cyB0aGUgKGksaikgY2VsbAogICAgaGkgPSBtYXgoaGksY291bnQrMSk7Ly9oaSBzdG9yZXMgdGhlIG1heGltdW0gb2YgdmFsdWUgb2YgdmlzaXRlZCBzcXVhcmVzCiAgICAvL3RyeSBhbGwgOCBwb3NzaWJsZSBtb3ZlcyBmb3Iga25pZ2h0CiAgICBzZXQoaS0xLGotMixjb3VudCsxKTsKICAgIHNldChpLTIsai0xLGNvdW50KzEpOwogICAgc2V0KGkrMSxqLTIsY291bnQrMSk7CiAgICBzZXQoaSsyLGotMSxjb3VudCsxKTsKICAgIHNldChpLTEsaisyLGNvdW50KzEpOwogICAgc2V0KGktMixqKzEsY291bnQrMSk7CiAgICBzZXQoaSsxLGorMixjb3VudCsxKTsKICAgIHNldChpKzIsaisxLGNvdW50KzEpOwogICAgYm9hcmRbaV1bal0gPSAxOy8vc2V0cyAoaSxqKSBjZWxsIGFnYWluKGJhY2t0cmFja2luZykKfQppbnQgbWFpbigpewovLyAgICBmcmVvcGVuKCJpbnB1dC50eHQiLCJyIixzdGRpbik7CgogICAgY2luPj5uOwogICAgc3VtID0gMDsKCiAgICBmb3IoaW50IGk9MDtpPG47aSsrKXsKICAgICAgICBmb3IoaW50IGo9MDtqPG47aisrKXsKICAgICAgICAgICAgY2luPj5ib2FyZFtpXVtqXTsKICAgICAgICAgICAgaWYoYm9hcmRbaV1bal0pCiAgICAgICAgICAgICAgICBzdW0rKzsgLy8gc3VtIHN0cm9lcyB0b3RhbCBudW1iZXIgb2YgdmFsaWQgY2VsbHMgb24gY2hlc3Nib2FyZAogICAgICAgIH0KICAgIH0KICAgIGhpPTA7CiAgICBzZXQoMCwwLDApOwogICAgY291dDw8c3VtLWhpPDwiXG4iOwogICAgcmV0dXJuIDA7Cn0=