강라온(와 드디어 ㅠㅠ)(오목 컷!)
#include <stdio.h>
int Baduk[21][21]={},r=0;
int dx[4] = {+1,0,+1,-1};
int dy[4] = {0,+1,+1,+1};
void dfs(int i, int j, int c, int dir)
{
if(i<1||j<1||i>19||j>19||Baduk[i][j]!=c)
{
return ;
}
else
{
r++;
dfs(i+dx[dir], j+ dy[dir], c, dir);
}
}
int main()
{
int i=0,j=0,c=0,w1=0,w2=0;
for (i=1;i<20;i++)
{
for (j=1;j<20;j++)
{
scanf("%d",&Baduk[i][j]);
}
}
for(j=1;j<20;j++)
{
for (i=1;i<20;i++)
{
if(Baduk[i][j]==1||Baduk[i][j]==2)
{
w1=i;
w2=j;
c=Baduk[i][j];
for(int k=0; k<4;k++)
{
if(Baduk[i-dx[k]][j-dy[k]]==c) continue;
dfs(i,j,c,k);
//printf("%d ",r);
if(r==5)
{
printf("%d\n",c);
printf("%d %d",w1,w2);
return 0;
}
r=0;
}
}
}
//printf("\n");
}
printf("0");
return 0;
}




