meme0724   9년 전

꼭 지나야 되는 특정한 지점을 m1, m2로 잡고 플로이드 알고리즘으로 각 지점간의 최단 거리를 모두 구한 뒤에

1->m1->m2->N 의 경로와 1->m2->m1->N중에서 더 짧은 거리를 해답으로 출력하는 방식이고

두 경로 모두다 거리가 210000000 이상이면 저 길이 없다는 뜻이니까 -1을 출력합니다.

어디에서 틀렸는지 좀 찾아주세요....

jng6017   9년 전

21억으로 초기화 시키셧는데 e가 21억보다 클때만 -1을 출력해서 그런게 아닐까 싶습니다.

21억 이상이면 부등호에 =이 추가 되어야할것같습니다.

algoshipda   9년 전

INF 너무 크게 잡아서 마지막 if문 위에서 min 계산할때 int 범위 넘을 수 있고 i==j 일때 mat[i][j] = 0으로 해줘야 하는듯 합니다.

algoshipda   9년 전

TLE 뜰거같은데 신기하게 안뜨네요

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