Algorithm/[Python] Code Up_basic100

[ 6098 ] 코드업 6098 : 성실한 개미

내일은개발천재🎵 2021. 4. 14. 17:41

< 문제 >

    - 개미의 이동경로를 출력해라.

< 코드 >

game = [list(map(int, input().split())) for _ in range(10) ]
a, b = 1, 1
while (game[a][b] == 0):
  game[a][b] = 9
  if game[a][b+1] == 0 or game[a][b+1] == 2:
    b += 1
  else:
    a += 1
if(game[a][b] == 2):
  game[a][b] = 9
for i in game:
  print (' '.join(repr(j) for j in i))

< 코드 설명 >

 1) 2차원 리스트를 입력받는다.

    => map object로 각 행을 입력받고, list로 변경한다.

 2) a, b를 1, 1로 초기화한다.

    =>개미의 출발위치가 2, 2이기 때문에 리스트에서의 위치는 1, 1이다. 

 3) 조건문으로 개미의 위치 변경

    (1) 현재 개미의 위치가 0이라면 ( 갈 수 있다면 )

       => 현재 위치를 9로 변경시킨다.

    (2) 개미의 위치가 0이나 2일 때 (갈 수 있는 길)

       => b를 증가시켜 오른쪽으로 한 칸 움직인다. 

    (3) 벽이라면

       => a를 증가시켜 아래로 한 칸 움직인다.