벨만-포드 알고리즘에서 최종 경로를 구하는 과정에서
음수 사이클이 있을 경우, path가 시작점으로 돌아가지 않고,
음수 사이클에서 순회하게 된다는 사실을 이용해서 코드를 제작했습니다.
하지만, 벨만포드 for문 횟수 안에서 path가 반드시 음수사이클을 지정한다는 것에 의문이 생겨서, 다음 <테스트 케이스>에서 잘못된 결과가 나왔습니다.
<테스트 케이스>
11 12
0 10 1000
10 9 1000
9 8 1000
8 7 1000
7 6 1000
6 5 1000
5 4 1000
4 3 1000
3 2 1
2 3 -2
2 0 1000
0 1 4
0 - > 10으로가는 경로에 음수사이클이 있어서, INFINITY가 나와야 할것 같은데, 결과는 4 입니다.
코드는 다음입니다.
sonyy789
벨만-포드 알고리즘에서 최종 경로를 구하는 과정에서
음수 사이클이 있을 경우, path가 시작점으로 돌아가지 않고,
음수 사이클에서 순회하게 된다는 사실을 이용해서 코드를 제작했습니다.
하지만, 벨만포드 for문 횟수 안에서 path가 반드시 음수사이클을 지정한다는 것에 의문이 생겨서, 다음 <테스트 케이스>에서 잘못된 결과가 나왔습니다.
<테스트 케이스>
11 12
0 10 1000
10 9 1000
9 8 1000
8 7 1000
7 6 1000
6 5 1000
5 4 1000
4 3 1000
3 2 1
2 3 -2
2 0 1000
0 1 4
0 - > 10으로가는 경로에 음수사이클이 있어서, INFINITY가 나와야 할것 같은데, 결과는 4 입니다.
코드는 다음입니다.
8년 전