标签:des style class blog c code
1 5 5 14 S*#*. .#... ..... ****. ...#. ..*.P #.*.. ***.. ...*. *.#..
YES
1 #include <stdio.h> 2 #include <stdlib.h> 3 int Len_X,Len_Y,D,SIGN; 4 char Map[20][20][5]; 5 int DFS(int x,int y,int z,int d,int D) 6 { 7 int ii,jj; 8 if(SIGN==1)return 0; 9 if(x>=Len_X||x<0||y>=Len_Y||y<0||d>D)return 0; 10 if(d<=D&&Map[x][y][z]==‘P‘){SIGN=1;return 1;} 11 if(Map[x][y][z]==‘#‘) 12 { 13 if(z==0&&(Map[x][y][1]!=‘*‘&&Map[x][y][1]!=‘#‘)) 14 { 15 DFS(x,y,1,d,D);Map[x][y][1]=‘.‘;return 0; 16 } 17 else if(z==1&&(Map[x][y][0]!=‘*‘&&Map[x][y][0]!=‘#‘)) 18 { 19 DFS(x,y,0,d,D);Map[x][y][0]=‘.‘;return 0; 20 } 21 else return 0; 22 } 23 if(d>=D)return 0; 24 if(Map[x][y][z]==‘*‘)return 0; 25 else Map[x][y][z]=‘*‘; 26 /* getch(); 27 putchar(‘\n‘); 28 printf("\tStyp: %d\n",d); 29 for(ii=0;ii<Len_X;ii++) 30 { 31 if(z==1)putchar(‘\t‘); 32 for(jj=0;jj<Len_Y;jj++) 33 { 34 printf("%c",Map[ii][jj][z]); 35 } 36 putchar(‘\n‘); 37 }*/ 38 if(x+1<Len_X&&Map[x+1][y][z]!=‘*‘) 39 { 40 DFS(x+1,y,z,d+1,D); 41 if(Map[x+1][y][z]!=‘#‘) 42 Map[x+1][y][z]=‘.‘; 43 } 44 if(x-1>=0&&Map[x-1][y][z]!=‘*‘) 45 { 46 DFS(x-1,y,z,d+1,D); 47 if(Map[x-1][y][z]!=‘#‘) 48 Map[x-1][y][z]=‘.‘; 49 } 50 if(y+1<Len_Y&&Map[x][y+1][z]!=‘*‘) 51 { 52 DFS(x,y+1,z,d+1,D); 53 if(Map[x][y+1][z]!=‘#‘) 54 Map[x][y+1][z]=‘.‘; 55 } 56 if(y-1>=0&&Map[x][y-1][z]!=‘*‘) 57 { 58 DFS(x,y-1,z,d+1,D); 59 if(Map[x][y-1][z]!=‘#‘) 60 Map[x][y-1][z]=‘.‘; 61 } 62 return 0; 63 } 64 65 int main() 66 { 67 int Begin_x,Begin_y,Begin_z,i,j,T; 68 scanf("%d",&T); 69 while(T--) 70 { 71 scanf("%d%d%d",&Len_X,&Len_Y,&D); 72 getchar(); 73 for(i=0;i<Len_X;i++) 74 { 75 for(j=0;j<Len_Y;j++) 76 { 77 scanf("%c",&Map[i][j][0]); 78 if(Map[i][j][0]==‘S‘) 79 {Begin_x=i;Begin_y=j;Begin_z=0;} 80 } 81 getchar(); 82 } 83 getchar(); 84 for(i=0;i<Len_X;i++) 85 { 86 for(j=0;j<Len_Y;j++) 87 { 88 scanf("%c",&Map[i][j][1]); 89 if(Map[i][j][1]==‘S‘) 90 {Begin_x=i;Begin_y=j;Begin_z=1;} 91 } 92 getchar(); 93 } 94 SIGN=0; 95 DFS(Begin_x,Begin_y,Begin_z,0,D); 96 if(SIGN==1) 97 printf("YES\n"); 98 else 99 printf("NO\n"); 100 } 101 return 0; 102 }
标签:des style class blog c code
原文地址:http://www.cnblogs.com/LWF5201314614/p/3750336.html