이 블로그 검색

2018년 8월 14일 화요일

[백준 3190] 뱀

[ 백준 3190 : 뱀 ]

삼성 서티 기출 문제이당.
역시나 그냥 시뮬레이션 문제이고 뱀이 죽을때까지 단순 반복만 하면된다.

쉽게 눈에 보이도록 구현하기 위해 나는 맵에 직접 뱀을 그리고 지우는 작업을 하였다.
뱀의 꼬리좌표와 뱀이 이동하는 시간과 방향을 큐에 각각 집어넣었고 tail (뱀의 꼬리 좌표) , mov(뱀의 시간,방향)
현재 이동한 시간이 mov큐의 front()의 시간과 일치하다면 방향으로 회전한 후 mov.pop() 을 실행해준다.
그리고 현재 뱀의 머리가 있는 곳이 주어진 N 범위 안이고 사과도 없고 뱀도없다면 tail큐의 front()좌표를 0으로 만든 후 팝한다.

이런식으로 뱀이 직접 이동하더라도 범위가 워낙 작아 시간초과도 안나고 메모리도 안터진다.



댓글 없음:

댓글 쓰기

[백준 16236] 아기 상어

[ 백준 16236 : 아기 상어 ] 2018 삼성전자 sw직무 하반기 기출문제입니다. 역대 삼성전자 기출문제가 그렇듯 역시나 BFS,DFS,완탐,DP,단순구현 입니다. 저는 문제를 단순히 BFS로 풀어갔습니다. 조건만 잘 지킨다면 한번에 ...