leejb905   7달 전

안녕하세요 많이 풀어보고 고민도 해봤는데, 어느 부분이 틀린지 찾기 좀 힘들어서 문의 남깁니다.

일단 처음 인풋을 받으면서 시작점 from, to를 찾습니다. 

from이 시작점이고, from의 위치로 돌아 올 수 있기에 함수에서 '0'을 '.'으로 바꿔주고 난 후 탐색을 시작합니다.

동서남북 순서대로 살피면서, 다음에 갈 좌표의 input값을 확인합니다.

1, # , a~f, A~F -> 해당키를 가지고 있는지

확인 후 현재까지의 이동횟수가 작다면 해당 지점을 (재)방문합니다.

*visited[y][x][keys] 배열은 y,x의 좌표에 key {a,b,c,d,e,f,0}를 가지고 지나가는 경우 

*키가 여러개이므로 한 지점으로 여러번 올 수 있기에 weight를 확인 하면서Enqueue 결정.

1,2,4,8,16,32 값은 비트를 통해 a~f 어떤 키의 값을 가지고 있는지 확인하기 위함.

한번 확인 부탁드립니다. 고수님들 ㅜ



leejb905   7달 전

키 갱신후 visited를 다시 검사 후 갱신하고 큐에 넣는 것도 해봤는데 똑같이 오류가 났었습니다...ㅠ

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