fork download
  1. #include <stdio.h>
  2.  
  3. int main(void) {
  4. int map[10][10] = {{0}};
  5.  
  6. // 미로 입력
  7. for(int i = 0; i < 10; i++) {
  8. for(int j = 0; j < 10; j++) {
  9. scanf("%d", &map[i][j]);
  10. }
  11. }
  12.  
  13. // 개미의 초기 위치와 경로 설정
  14. int ant_x = 2, ant_y = 2;
  15. map[ant_x][ant_y] = 9;
  16.  
  17. // 오른쪽 또는 아래쪽으로만 이동하며 미로 탐색
  18. while(1) {
  19. if(map[ant_x][ant_y + 1] != 1) { // 오른쪽으로 이동 가능한 경우
  20. ant_y++; // 오른쪽으로 이동
  21. map[ant_x][ant_y] = 9; // 경로 표시
  22. if(map[ant_x][ant_y] == 2) // 먹이를 찾은 경우
  23. break;
  24. }
  25. else if(map[ant_x + 1][ant_y] != 1) { // 아래쪽으로 이동 가능한 경우
  26. ant_x++; // 아래쪽으로 이동
  27. map[ant_x][ant_y] = 9; // 경로 표시
  28. if(map[ant_x][ant_y] == 2) // 먹이를 찾은 경우
  29. break;
  30. }
  31. else // 더 이상 이동할 수 없는 경우
  32. break;
  33. }
  34.  
  35. // 결과 출력
  36. for(int i = 0; i < 10; i++) {
  37. for(int j = 0; j < 10; j++) {
  38. printf("%d ", map[i][j]);
  39. }
  40. printf("\n");
  41. }
  42.  
  43. return 0;
  44. }
  45.  
Success #stdin #stdout 0s 5304KB
stdin
1 1 1 1 1 1 1 1 1 1
1 0 0 1 0 0 0 0 0 1
1 0 0 1 1 1 0 0 0 1
1 0 0 0 0 0 0 1 0 1
1 0 0 0 0 0 0 1 0 1
1 0 0 0 0 1 0 1 0 1
1 0 0 0 0 1 2 1 0 1
1 0 0 0 0 1 0 0 0 1
1 0 0 0 0 0 0 0 0 1
1 1 1 1 1 1 1 1 1 1
stdout
1 1 1 1 1 1 1 1 1 1 
1 0 0 1 0 0 0 0 0 1 
1 0 9 1 1 1 0 0 0 1 
1 0 9 9 9 9 9 1 0 1 
1 0 0 0 0 0 9 1 0 1 
1 0 0 0 0 1 9 1 0 1 
1 0 0 0 0 1 9 1 0 1 
1 0 0 0 0 1 9 9 9 1 
1 0 0 0 0 0 0 0 9 1 
1 1 1 1 1 1 1 1 1 1