#include<iostream>
#include<cmath>
#include<vector>
#include<climits>
#include<algorithm>
#include<numeric>
#include<iomanip>
#include<map>
#include<unordered_map>
#include<set>
#include<random>
#include<cassert>
using namespace std;
#define ll long long int
#define ld long double
const ll Mod = (ll)1e9+7;
ll n;
set<pair<ll,ll> > ss;
ll M[100][100];

void f(ll x,ll y)
{
	if(x>n || y>n || x<1 || y<1)
	{
	return;	
	}
	if(M[x][y]==0){return;}
	
	if(M[x][y])
	{
	// can be reached
	ss.erase({x,y});	
     }
    M[x][y]=0 ; 
    
	f(x+1,y+2);
	f(x+2,y+1);
	f(x-1,y-2);
	f(x-2,y-1);
	f(x+1,y-2);
	f(x-1,y+2);
	f(x+2,y-1);
	f(x-2,y+1);
	
	M[x][y]=1;
	// to block after one call
	
	return;
}

int main()
{
	cin>>n;
	// n*n;
	for(ll i=1;i<=n;i++)
	for(ll j=1;j<=n;j++)
	{cin>>M[i][j];
	if(M[i][j]){ss.insert({i,j}) ;}	
	}

	f(1,1);

	ll ans = (ll)ss.size() ;
	cout<<ans<<endl;
	
return 0;
}
