백준 1064번 평행사변형

문제

평행사변형은 평행한 두 변을 가진 사각형이다. 세 개의 서로 다른 점이 주어진다. A(xA,yA), B(xB,yB), C(xC,yC)

이때, 적절히 점 D를 찾아서 네 점으로 평행사변형을 만들면 된다. 이때, D가 여러 개 나올 수도 있다.

만들어진 모든 사각형 중 가장 큰 둘레 길이와 가장 작은 둘레 길이의 차이를 출력하는 프로그램을 작성하시오. 만약 만들 수 있는 평행사변형이 없다면 -1을 출력한다.


문제풀이

사용한 알고리즘 : 구현

(1) 코드 19~23

 세 점이 한 직선 위에 있으면 평행사변형을 만들 수 없습니다.

(2) 코드 29~36

 세 점이 만드는 세 직선 중 2개를 뽑아 만들 수 있는 평행사변형의 둘레 길이 중 최대 - 최소 가 답입니다.



댓글