#include<cstdio>
#include<iostream>
#include<queue>
using namespace std;
int a[50][50],b[50][50],sum=0;
int dx[4]={0,0,1,-1};//四个方位
int dy[4]={1,-1,0,0};
struct node
{
int x,y;
}now;
void bfs(int x,int y)
{
queue<node> q;
q.push({x,y});
while(!q.empty())
{
now=q.front();//当前的点
q.pop();
for(int i=0;i<4;i++)
{
int xx=now.x+dx[i];//往当前点的各个方向前进
int yy=now.y+dy[i];
if(xx>=0&&xx<=11&&yy>=0&&yy<=11&&b[xx][yy]==0&&a[xx][yy]==0)
{//未越界 还没被标记 等于0
b[xx][yy]=1;//标记
q.push({xx,yy});
}
}
}
}
int main()
{
for(int i=1;i<=10;i++)
for(int j=1;j<=10;j++)
cin>>a[i][j];
bfs(0,0);
for(int i=1;i<=10;i++)
{
for(int j=1;j<=10;j++)
{//等于0 没被标记 也就是在1这个圈里面的0
if(a[i][j]==0&&b[i][j]==0)
sum++;
}
}
cout<<sum;
return 0;
}