본문 바로가기
온라인 저지/ETC.

[CodeUp/C] 성실한 개미

by ahj 2021. 9. 22.
#include <stdio.h>

int main()
{
  int a[10][10]={}, i, j;
  for(i=0;i<10;i++)
  {
    for(j=0;j<10;j++)
    {
      scanf("%d", &a[j][i]);//배열 각 칸마다 값 넣기
    }
  }
  i=1;
  j=1;//개미 출발점 설정(문제에선 2,2지만 우리는 0,0을 1,1로 생각하므로)
  while(1)
  {
    if(a[i][j]==0)//개미가 있는 위치가 0이면
    {
      a[i][j]=9;//9로 바꾸고
      if(a[i+1][j]==0||a[i+1][j]==2) i++;//사실상 개미 있는 위치 오른쪽이 1(벽)이 아니면 오른쪽으로 이동(i++)
      else j++;//오른쪽이 벽이면 아래로 이동(j++)
    }
    else if(a[i][j]==2)//목적지에 도착하면
    {
      a[i][j]=9;//9로 바꾸고
      break;//반복문 탈출
    }
    else break;//이동한 위치가 벽이면 그냥 탈출
  }
  for(i=0;i<10;i++)
  {
    for(j=0;j<10;j++)
    {
      printf("%d", a[j][i]);
      if(j==9) break;
      printf(" ");
    }
    printf("\n");
  }
}

파이썬으로 풀때는 몇시간이고 앉아서 풀었던거 같은데 확실히 순서도로 정리해서 푸니까 수월하게 풀렸다.

'온라인 저지 > ETC.' 카테고리의 다른 글

[JOL/Java] 1037 오류교정  (0) 2022.02.20
[JOL/Java] 1828 냉장고  (0) 2022.02.15
[코드업 100제/python] 96제  (0) 2021.08.16

댓글