fork download
  1. #include <stdio.h>//第2講演習問4
  2. #define W 8
  3. #define H 6
  4. #include <stdlib.h>
  5.  
  6. char map[H][W]={
  7. {1,1,1,1,1,1,1,1},
  8. {1,0,0,0,0,0,0,1},
  9. {1,0,1,1,1,0,1,1},
  10. {1,0,0,0,0,1,0,1},
  11. {1,0,0,1,0,0,2,1},
  12. {1,1,1,1,1,1,1,1},
  13. };
  14. void maze1(int x, int y, int depth){
  15. int i;
  16. for(i=1;i<=depth*2;i++){
  17. printf(" ");
  18. }
  19. if(map[y][x]==0){
  20. printf("(%d,%d)\n",x,y);
  21. maze1(x+1,y,depth+1);
  22. maze1(x,y+1,depth+1);
  23. }
  24. else if(map[y][x]==1)printf("(%d,%d)X\n",x,y);
  25. else if(map[y][x]==2){
  26. printf("(%d,%d)OK\n",x,y);
  27. exit(0);
  28. }
  29. }
  30. int main(void) {
  31. int x,y,depth;
  32. x=1;
  33. y=1;
  34. depth=0;
  35. maze1(x,y,depth);//depthによるずれはスタートからの歩数みたい
  36. return 0;
  37. }
Success #stdin #stdout 0s 5320KB
stdin
Standard input is empty
stdout
(1,1)
  (2,1)
    (3,1)
      (4,1)
        (5,1)
          (6,1)
            (7,1)X
            (6,2)X
          (5,2)
            (6,2)X
            (5,3)X
        (4,2)X
      (3,2)X
    (2,2)X
  (1,2)
    (2,2)X
    (1,3)
      (2,3)
        (3,3)
          (4,3)
            (5,3)X
            (4,4)
              (5,4)
                (6,4)OK