/*
#include <stdio.h>
int arr[21][21]={},k=0,p=0,arr1[21][21]={};
void dfs1(int i,int j,int m)
{
if(arr[i][j]!=m) return ;
k++;
arr[i][j]=-1;
if(k>5) return ;
dfs1(i,j+1,m);
dfs1(i,j-1,m);
return ;
}
void dfs2(int i,int j,int m)
{
if(arr[i][j]!=m) return ;
k++;
arr[i][j]=-1;
if(k>5) return ;
dfs2(i+1,j,m);
dfs2(i-1,j,m);
return ;
}
void dfs3(int i,int j,int m)
{
if(arr[i][j]!=m) return ;
k++;
arr[i][j]=-1;
if(k>5) return ;
dfs3(i+1,j+1,m);
dfs3(i-1,j-1,m);
return ;
}
void dfs4(int i,int j,int m)
{
if(arr[i][j]!=m) return ;
k++;
arr[i][j]=-1;
if(k>5) return ;
dfs4(i-1,j+1,m);
dfs4(i+1,j-1,m);
return ;
}
void f()
{
for(int i=1;i<=19;i++)
for(int j=1;j<=19;j++)
arr[i][j]=arr1[i][j];
}
int main()
{
int m,v,a,b;
for(int i=1;i<=19;i++)
for(int j=1;j<=19;j++)
scanf("%d",&arr[i][j]);
for(int i=1;i<=19;i++)
for(int j=1;j<=19;j++)
arr1[i][j]=arr[i][j];
for(int j=1;j<=19;j++){
for(int i=1;i<=19;i++){
m=arr[i][j];
if(m!=0){
f();
k=0;
dfs1(i,j,m);
if(k==5){
a=i;
b=j;
break;
}
f();
k=0;
dfs2(i,j,m);
if(k==5){
a=i;
b=j;
break;
}
f();
k=0;
dfs3(i,j,m);
if(k==5){
a=i;
b=j;
break;
}
f();
k=0;
dfs4(i,j,m);
if(k==5){
a=i;
b=j;
break;
}
}
}
if(k==5) break;
}
if(k==5) printf("%d\n%d %d",m,a,b);
else printf("0");
return 0;
}
*/
/*
#include <stdio.h>
int arr[102][102]={},k=0,p=1,arr1[102][102]={};
void dfs(int i, int j,int m)
{
if(arr[i][j]<=m) return ;
k++;
arr[i][j]=-1;
dfs(i,j+1,m);
dfs(i,j-1,m);
dfs(i+1,j,m);
dfs(i-1,j,m);
return ;
}
void f(int n)
{
for(int i=1;i<=n;i++)
for(int j=1;j<=n;j++)
arr[i][j]=arr1[i][j];
}
int main()
{
int n,i,j,m,max=0;
scanf("%d",&n);
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
scanf("%d",&arr[i][j]);
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
arr1[i][j]=arr[i][j];
for(m=0;p!=0;m++){
p=0;
f(n);
for(i=1;i<=n;i++){
for(j=1;j<=n;j++){
k=0;
dfs(i,j,m);
if(k>0) p++;
}
}
if(p>max) max=p;
}
printf("%d",max);
}
*/
/*
#include <stdio.h>
int arr[502][502]={},k=0,p=0,v[502]={},v1[502]={},n;
void dfs(int node)
{
v[node]=1;
k++;
for(int j=1;j<=n;j++){
if(v[j]==0&&arr[j][node]==1) dfs(j);
}
return ;
}
void dfs1(int node)
{
v[node]=1;
k++;
for(int j=1;j<=n;j++){
if(v[j]==0&&arr[j][node]==-1) dfs1(j);
}
return ;
}
void f(int n)
{
for(int h=1;h<=n;h++) v[h]=v1[h];
}
int main()
{
int m,i,a,b;
scanf("%d %d",&n,&m);
for(i=0;i<m;i++){
scanf("%d %d",&a,&b);
arr[a][b]=1;
arr[b][a]=-1;
}
for(i=1;i<=n;i++){
k=0;
f(n);
dfs(i);
dfs1(i);
if(k==n+1) p++;
}
printf("%d",p);
return 0;
}
*/