roeniss   4년 전

--------------------------------- (수정)---------------------------------

이론은 맞았는데 구현에 큰 빈틈이 있었네요. 해결하였습니다.

아래 댓글로 반례 하나 만들어 두었습니다. 누군가에게 도움이 되길...

--------------------------------- (수정 끝)---------------------------------

실력이 많이 부족해서 예외 케이스를 못잡고 있습니다. 반례 하나만 찾아주시면 정말 감사하겠습니다.

(경고) 이 아래 텍스트로는 로직을 간단하게 설명하였으니 조심하시길 바랍니다!

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

# 로직 설명

dfs + 이분탐색 으로 접근했습니다.

지나간 자리를 checkbox라는 배열로 선언했고, 이분탐색 middle값이 갱신될때마다 리셋해주었습니다.

특별히, dfs 내에서 다음 지점으로 나아갈 때, 이미 지나간 자리여도 특수장비를 써서 지나갔었다면 && 현재 특수장비를 안쓰고 그 지점에 갈 수 있다면 해당 지점으로 가도록 설정하였습니다. 즉, 장비는 아낄 수 있으면 아끼도록 하였습니다.

게시판에 있는 반례 데이터는 모두 통과하였습니다.

감사합니다.

roeniss   4년 전

10 10
0 0 0 0 0 9 9 9 9 9
9 9 9 9 0 9 9 9 9 9
0 0 0 9 0 9 9 9 9 9
0 9 0 9 0 9 9 9 9 9
0 9 0 0 0 9 9 9 9 9
0 9 9 9 0 9 9 9 9 9
0 9 9 9 9 9 9 9 9 9
0 0 0 0 0 0 0 0 0 0
0 9 9 9 0 9 9 9 9 9
9 9 9 9 0 9 9 9 9 0

답: 0 

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