emrdbs123   2년 전

안녕하세용.

로봇 청소기 문제를 풀었는데 작동 규칙에 문제가 있는 것 같아 질문 드립니다.

로직상 예제 2가 답이 57이 나오려면 

2.b와 2.c의 순서가 바뀌어야 하는 것이 맞지 않나요?

2.b가 2.c에 앞선다면

예제 2의경우 9,3에서 아래 벽과 동,북,서쪽의 청소된 칸에 갇혀서 빙글빙글 돌게 되는 것이 맞지 않나요?

문제가 이상하다 싶어 의도적으로 2.c와 2.b의 순서를 바꿔서 로직을 구성하니 답이 57이 됩니당..

loop에서 

line 43부분이 2.a 

line 48번이 4방면이 모두 청소 할 수 없는 곳인지 확인하는 2.c

line 55 부분이 왼쪽을 확인 하는 2.b부분입니당

seecimi   2년 전

1. 왼쪽 방향부터 차례대로 인접한 칸을 탐색

2. 왼쪽 방향에 청소할 공간이 없다면, 그 방향으로 회전하고 첫 번째 작업으로 돌아간다.

사방에 청소할 공간이 없음을 알 때에는, 청소기의 진행 방향이 처음 진행 방향과 일치해야 합니다. rotate를 4번 해가며 체크한 후에, 2.c번째로 가야 한다는 뜻입니다.


+ sum4 함수는 좋은 아이디어 같아요. 잘 보고 갑니다!

댓글을 작성하려면 로그인해야 합니다.