choyj0920   3년 전

선분교차2에서 맞은 코드를 가지고 좌표를 구하는 부분을 추가했는데 틀리는 이유를 잘 모르겠네요 

반례 부탁 드립니다.

klm03025   3년 전

CCW의 곱으로 평행성을 따졌는데, 이런 경우엔 다음과 같은 케이스를 걸러내지 못합니다.

1 6 5 5
5 5 1 1

A와 B, C가 구성하는 CCW 값은 0이지만, A와 B, D가 구성하는 CCW 값은 0이 아닙니다.

당연히 C와 D, A가 구성하는 CCW는 0이 아니겠지만, C와 D, B가 구성하는 CCW는 0이겠죠.

이렇게 되면 31번째 줄로 들어가게 됩니다. 교점 여부 판단에는 문제가 없지만, 내부 조건문에 34번째에도, 37번째도 속하지 않기 때문에 교점을 출력하지 않고 프로그램이 종료될겁니다.

31번째 조건 내부에 CCW의 곱이 아닌 각각의 CCW를 다시 한 번 확인하는 조건을 내부에 삽입하면 해결할 수 있을겁니다.

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