ambl2357   4년 전

어느부분에서 메모리 초과가 뜨는 걸까요 ? ㅠㅠ

lovinix   4년 전

아마 터진다면 66~81줄 사이에서 무한루프때문에 터질거같습니다.

74줄에서 dist[e.dst] == tmp.cost + e.cost 인 경우 pq에 계속 edge를 넣는데 여기서 무한루프를 도니까 시간초과 이전에

new Edge() 때문에 메모리가 먼저 터져버리는거같네요

그런데 벨만포드를 우선순위큐로 구현할 수 있나요? 66~81 줄의 해당 구간을 visit[src]==true 인 경우 continue하더라도 음의 사이클이 있는 예제2번을 제대로 통과할거같지 않아보입니다.

ambl2357   4년 전

감사합니다~! 남은 수업더 열심히 들으십시연~!

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