moonsoo5522   7년 전

문제에서는 오르막길 코스트가 0이고, 내리막길 코스트가 1이라서, 표준 입력으로 값을 얻은 이후, 아예 0과 1을 반전해서 자료구조에 저장했습니다.

그리고 오름차순으로 정렬해서 최소 스패닝트리 코스트를 구하고

한번은 내림차순으로 정렬해서 최대 스패닝트리 코스트를 구한 다음, 두 코스트의 제곱을 빼서 답을 구했는데

틀렸다고 나오네요... 크루스칼 알고리즘 코드가 틀린 것 같진 않은데 어디가 문제인지 감이 잡히지 않습니다 ㅠㅠ

haja   7년 전

if(rootA > rootB) root[a] = rootB;

else root[b] = rootA;

이거를 root[rootA] = rootB
이렇게 바꿔보세요.

moonsoo5522   7년 전

어처구니 없는 실수를 했네요 ㅎㅎ 감사합니다.

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