작성
·
157
0
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
http://boj.kr/7d1b078d34894888995766119fc55780
아래와 같은 사고 과정을 따라 문제를 풀었습니다.
먼저 동생이 0에서 출발하더라도 1000초면 500,000을 넘어간다는 것을 확인했습니다.
또한 500,000 크기를 가지는 int형 배열이 약 2MB 정도의 공간만을 차지하므로
동생의 위치에 따른 시간을 먼저 broPos 배열에 저장했습니다.
ex. 동생이 5를 0초에 방문, 6을 1초에 방문, 8을 2초에 방문 ->
broPos[5] = 0, broPos[6] = 1, broPos[8] = 2
이후 수빈이가 bfs를 통해 탐색하되
같은 시간에 동생을 만나는 경우(broPos[next] == visited[next] - 1) 리턴후 시간 출력
동생의 지나갈 위치를 짝수초만큼 먼저 지나가는 경우 리턴 후 시간 + 짝수초 출력
동생이 500,000을 넘는 시간이 지나면 리턴 후 -1 출력
해당 방법으로 문제를 풀이했는데 어느 부분이 틀린걸까요?