-
https://www.acmicpc.net/problem/3190
3190번: 뱀
'Dummy' 라는 도스게임이 있다. 이 게임에는 뱀이 나와서 기어다니는데, 사과를 먹으면 뱀 길이가 늘어난다. 뱀이 이리저리 기어다니다가 벽 또는 자기자신의 몸과 부딪히면 게임이 끝난다. 게임
www.acmicpc.net
https://github.com/JUNGSOONIL/JAVA/blob/main/BAEKJOON%203190
GitHub - JUNGSOONIL/JAVA: JAVA 소스 코드
JAVA 소스 코드. Contribute to JUNGSOONIL/JAVA development by creating an account on GitHub.
github.com
해당 문제는 뱀이 존재하는데 이동하면서 사과를 먹으면 몸길이가 늘어나고 자신 몸을 만나거나
벽에 부딪히면 종료하는 게임이다. 이때 몇 초 만에 게임이 끝나는지 구하는 문제다.
해당 문제는 덱이라는 자료구조를 이용해 해결했고, 엄청 초반에 큐 스택 덱에 대해서 구현하는 문제를
푼 적이 있는데 이 부분이 생각나서 시도해 보았다.
처음의 문제를 잘못 이해해서 회전하는 부분에서 해당 숫자만큼 이동을 하고 회전한다고 생각했는데
알고 보니 해당 숫자가 총 이동 시간이었고, 꼬리를 마주하는 부분에서도 그냥 덱에서 해당 부분이
존재하면 멈추는 식으로 했는데 이상하게 contins 메서드가 먹지를 않아서 그냥
map를 통해 뱀의 위치는 2로 두고 진행하여 해결했다
728x90'알고리즘 > Baekjoon' 카테고리의 다른 글
Baekjoon 11048 이동하기 JAVA (0) 2021.11.14 Baekjoon 13023 ABCDE JAVA (0) 2021.11.14 Baekjoon 7562 나이트의 이동 JAVA (0) 2021.11.14 Baekjoon 10830 행렬 제곱 JAVA (0) 2021.11.14 Baekjoon 11401 이항 계수 3 JAVA (0) 2021.11.14 댓글