15809번 - 전국시대
유니온 파인드를 이용하여 풀었는데
동맹을 맺으면 동맹을 맺기전 root정점과 동맹을 맺은후의 root정점끼리 병력을 합치고, 병력을 지웁니다
전쟁을 해서 국가가 만약에 망하면, 해당 국가의 parent배열을 -1로 가리키게 하여,
나중에 find함수를 통해 갱신되는 정점들을 -1로 갱신이 되면서, 국가가 망함을 표현했습니다
병력이 남아있을때 국가로 인정이 되어서 넣었는데
어떤 반례가 있을지 궁금합니당
댓글을 작성하려면 로그인해야 합니다.
gktgnjftm 5년 전
유니온 파인드를 이용하여 풀었는데
동맹을 맺으면 동맹을 맺기전 root정점과 동맹을 맺은후의 root정점끼리 병력을 합치고, 병력을 지웁니다
전쟁을 해서 국가가 만약에 망하면, 해당 국가의 parent배열을 -1로 가리키게 하여,
나중에 find함수를 통해 갱신되는 정점들을 -1로 갱신이 되면서, 국가가 망함을 표현했습니다
병력이 남아있을때 국가로 인정이 되어서 넣었는데
어떤 반례가 있을지 궁금합니당