标签:bsp while div turn freopen int cpp std for
#include <stdio.h>
int map[10][10];
int num[10][10];
int num1[10][10];
int N,min=99;
int x,y,x1,y1,x2,y2,x3,y3;
int ax[4]={0,1,0,-1};
int ay[4]={1,0,-1,0};
void dfs(int zx , int zy ,int zx1 , int zy1 ,int step)
{
if(step==5)
{
return ;
}
for(int i=0;i<4;i++)
{
int tx,tx1,ty,ty1;
tx=zx+ax[i];
ty=zy+ay[i];
tx1=zx1+ax[i];
ty1=zy1+ay[i];
if((tx>=0&&tx<N&&ty>=0&&ty<N)||(tx1>=0&&tx1<N&&ty1>=0&&ty1<N))
{
if((!map[tx][ty]&&(!num[tx][ty]))||(!map[tx1][ty1]&&(!num1[tx1][ty1])))
{
while((!map[tx][ty]&&(!num[tx][ty]))||(!map[tx1][ty1]&&(!num[tx][ty])))
{
if(!map[tx][ty]||!map[tx1][ty1])
{
}
}
}
dfs(tx,ty,tx1,ty1,step+1);
}
}
}
int main()
{
freopen("in.txt","r",stdin);
scanf("%d",&N);
for(int i=0;i<N;i++)
{
for(int j=0;j<N;j++)
{
scanf("%d",&map[i][j]);
if(map[i][j]==2)
{
x=i;
y=j;
map[i][j]=0;
}
if(map[i][j]==3)
{
x1=i;
y1=j;
map[i][j]=0;
}
if(map[i][j]==4)
{
map[i][j]=0;
}
if(map[i][j]==6)
{
map[i][j]=0;
}
}
}
num[x][y]=1;
num1[x1][y1]=1;
dfs(x,y,x1,y1,0);
printf("%d",min);
}
标签:bsp while div turn freopen int cpp std for
原文地址:http://www.cnblogs.com/liunx1109/p/6274514.html