dlguswo333   4년 전

일단 제 알고리즘의 방식은,

1. 각 변호사들이 신뢰하는 변호사들의 수를 저장해준다.

2. 같은 변호사들로 이루어진 쌍, 그러니까 양방향 edge가 등장하면 따로 루프임을 명시해준다.

3. 만약 신뢰하는 변호사의 수가 0인 변호사가 있으면 NO.

4. 그 다음 루프 관계를 가진 두 변호사가 서로 말고 신뢰하는 변호사가 없으면 NO. (54번 줄)

5. 그 다음은 YES.

정답 알고리즘이 YES인 걸 제 알고리즘이 NO 할 리는 없어 보이고, NO인 걸 YES로 출력하는 걸로 예상되는데, 그걸 보여주는 반례가 있을까요?

ha_ram   4년 전

반례입니다.

3 4
1 2
2 1
1 3
3 1

답 : NO

dlguswo333   4년 전

감사합니다! 답변 덕분에 이해됐어요!

서로 신뢰하는 관계의 변호사 간 두 edge를 이거 하나 저거 하나 없애보면서 DFS로 구상해볼게요!

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