#include <stdio.h>
int map[9][9]={},max=0,a=0;
void go(){
printf("\n");
for(int y=1;y<=7;y++){
for(int x=1;x<=7;x++){
printf("%d",map[y][x]);
}
printf("\n");
}
}
void dfs(int n,int i,int j)
{
if(map[j][i]!=n)
return;
map[j][i]=0;
//go();
a++;
dfs(n,i+1,j);
dfs(n,i-1,j);
dfs(n,i,j+1);
dfs(n,i,j-1);
}
int main()
{
int i,j;
for(j=1;j<=7;j++){
for(i=1;i<=7;i++){
scanf("%d",&map[j][i]);
}
}
for(j=1;j<=7;j++){
for(i=1;i<=7;i++,a=0){
if(map[j][i]!=0){
dfs(map[j][i],i,j);
if(a>2)
max++;
//printf("\n%d\n",max);
}
}
}
printf("%d",max);
}
top of page
실제 작동 상태를 확인하려면 라이브 사이트로 이동하세요.
DFS 캔디팡
DFS 캔디팡
댓글 0개
좋아요
댓글(0)
bottom of page