티스토리 뷰
풀이
뱀의 방향이 변할 수 있으므로 방향배열을 설정하고 BFS 혹은 DFS로 생각할 수도 있지만, 단순히 현재 바라보는 방향에서 왼쪽이냐 오른쪽이냐 만 생각하면 굳이 방향 배열을 만들 필요는 없다. dir변수를 둬서 0-우 1-하-2-좌 3-상으로 정한다. 'D'가 나오면 dir변수에 +1을 해주고 'L'가 나오면 -1을 해준다.
그리고 사과가 없는 위치에 도착하면 꼬리를 하나씩 잘라내면 되므로 이동시마다 현재위치를 계속 저장할 객체를 만들고 Queue에 저장한다. 그래서 사과가없으면 제일 처음 꼬리 좌표를 제거하고 그 부분을 이동가능한 0으로 설정한다.
코드
'알고리즘' 카테고리의 다른 글
<baekjoon> 나무재테크 (0) | 2020.11.03 |
---|---|
<baekjoon> 치즈 (0) | 2020.11.01 |
<SWEA> [S/W 문제해결 응용] - 보급로 (0) | 2020.10.29 |
<baekjoon> 테트로미노 (0) | 2020.10.28 |
<baekjoon> 계란으로 계란치기 (0) | 2020.10.26 |