/*#include <stdio.h>
#include <string.h>
int arr[101][101]={}; //노드의 연결상태 저장 인접행렬
int visited[101]={}; // 방문했는지 저장 배열
int a;
void dfs(int x) //노드x에서 갈 수 있는 곳을 모두 가세요
{
//printf("%d->",x);
visited[x]=1; //방문했따!
for(int i=1;i<=a;i++) // 모든 노드를 확인
{
if(arr[x][i]==1 && visited[i]==0) // x와 연결 && 방문x 노드에서
{
dfs(i);
}
}
}
int main()
{
int s,d,f,sum=0,i,j;
scanf("%d",&a); // 노드 개수
scanf("%d",&s); //연결선 개수
for(i=1;i<=s;i++)
{
scanf("%d %d",&d,&f);
arr[d][f]=1;
arr[f][d]=1;
}
dfs(1); //1번 노드에서 dfs 하세요 (모든 연결된 노드를 방문하세요)
for(i=2;i<=a;i++)
{
if(visited[i]==1)
{
sum++;
}
}
printf("%d",sum);
// quiz1. 5번노드와 연결되어있는 노드를 모두 출력하세요
// for(i=1;i<=a;i++)
// {
// if(arr[5][i]==1)
// {
// printf("%d ",i);
// }
// }
// for(i=1;i<=a;i++)
// {
// for(j=1;j<=a;j++)
// {
// printf("%d ",arr[i][j]);
// }
// printf("\n");
// }
return 0;
}*/
/**
#include <stdio.h>
#include <string.h>
int arr[27][27]={},s;
//void dfs(int i ,int j)
//{
// arr[i][j]=0; //방문 표시
// //범위안에있고, 연결되어있냐?
// if(i-1>=1 && arr[i-1][j]==1) dfs(i-1,j);
// if(i+1<=s && arr[i+1][j]==1) dfs(i+1,j);
// if(j-1>=1 && arr[i][j-1]==1) dfs(i,j-1);
// if(j+1<=s && arr[i][j+1]==1) dfs(i,j+1);
//}
void dfs(int i ,int j)
{
// 범위밖이거나? 0이니?
if(i<1 || i>s || j<1 || j>s || arr[i][j]!=1 ) return ;
arr[i][j]=0; //방문 표시
dfs(i-1,j);
dfs(i+1,j);
dfs(i,j-1);
dfs(i,j+1);
}
int main()
{
int d,i,j,cnt=0;
scanf("%d",&s);
// 1. map 입력받기
for(i=1;i<=s;i++)
{
for(j=1;j<=s;j++)
{
scanf("%1d",&arr[i][j]);
}
}
//2. dfs 시작하기
for(i=1;i<=s;i++)
{
for(j=1;j<=s;j++)
{
if(arr[i][j]==1)
{
printf("%d %d\n",i,j);
cnt++;
dfs(i,j);
}
}
}
printf("%d",cnt);
// for(i=1;i<=s;i++)
// {
// for(j=1;j<=s;j++)
// {
// printf("%d ",arr[i][j]);
// }
// printf("\n");
// }
return 0;
}
**/
/*#include <stdio.h>
#include <string.h>
char arr[101][101]={};
int d,f;
void dfs(int i ,int j)
{
if(i<1 || i>f || j<1 || j>d || arr[i][j]!='L' ) return ;
arr[i][j]=0;
dfs(i-1,j);
dfs(i+1,j);
dfs(i,j-1);
dfs(i,j+1);
dfs(i+1,j+1);
dfs(i-1,j-1);
dfs(i+1,j-1);
dfs(i-1,j+1);
}
// 첫째 줄에 두 정수 d, f가 주어진다
// d는 지도의 너비를 의미하고, f는 지도의 높이를 의미한다.
int main()
{
int i,j,cnt=0;
scanf("%d %d",&d,&f);
for(i=1;i<=f;i++)
{
for(j=1;j<=d;j++)
{
scanf(" %c",&arr[i][j]);
}
}
for(i=1;i<=f;i++)
{
for(j=1;j<=d;j++)
{
if(arr[i][j]=='L')
{
cnt++;
dfs(i,j);
}
}
}
printf("%d",cnt);
return 0;
}*/
#include <stdio.h>
#include <string.h>
int arr[10][10]={};
void dfs(int i ,int j)
{
if(i<1 || i>7 || j<1 || j>7 || arr[i][j]==) return;
arr[i][j]=0;
dfs(i-1,j);
dfs(i+1,j);
dfs(i,j-1);
dfs(i,j+1);
}
int main()
{
int d,i,j,cnt=0;
for(i=1;i<=7;i++)
{
for(j=1;j<=7;j++)
{
scanf("%d ",&arr[i][j]);
}
}
for(i=1;i<=7;i++)
{
for(j=1;j<=7;j++)
{
if(arr[i][j]==)
{
printf("%d %d\n",i,j);
cnt++;
dfs(i,j);
}
}
}
printf("%d",cnt);
return 0;
}