다각형의 넓이 구하기(백준 알고리즘 2166번)

2024. 3. 6. 21:29알고리즘

♣ 다각형의 넓이를 구하는 공식

CCW처럼 다각형의 넓이를 구하는 공식도 있다. CCW에서 본 신발끈 기법과 유사하다.

 

위와 같이 점들의 x, y 좌표가 주어지면 공식을 이용하여 면적을 구할 수 있다. 

 

먼저 반시계 방향으로 꼭짓점 좌표들을 나열한다. 

 

그리고 맨 처음 좌표를 맨 끝에 추가하여 나열한다. 

신발끈 공식처럼 앞 꼭짓점의 x좌표와 뒷꼭짓점의 y좌표를 곱한 값들을 모두 더한다. 

 

 

이번에는 반대로 앞 꼭짓점의 y좌표와 뒷꼭짓점의 x좌표를 곱한 값을 모두 더한다. 

 

이제 첫 번째 결과에서 두 번째 결과를 뺀다 => 82-(-38) = 120

이 결과값을 2로 나누면 다각형의 넓이를 구할 수 있다. 

 

단, 꼭짓점을 반시계 방향 대신 시계 방향으로 나열하여 계산하면 결과값이 음수가 된다. 그래서 음수가 나온 경우에는 절대값을 구하면 된다. 

 

 

♣ 백준알고리즘 2166번

 

 

다각형을 이루는 순서대로 점이 주어지므로 점의 순서가 반시계방향일 수도, 시계 방향일 수도 있다. 

위의 공식을 적용하여 코드를 작성한다.

 

 

♣ 참고 자료

https://ko.wikihow.com/%EB%8B%A4%EA%B0%81%ED%98%95-%EB%84%93%EC%9D%B4-%EA%B5%AC%ED%95%98%EA%B8%B0#:~:text=%EC%A0%95%EB%8B%A4%EA%B0%81%ED%98%95%EC%9D%98%20%EB%84%93%EC%9D%B4%EB%A5%BC%20%EA%B5%AC,%EC%9D%98%20%EC%A4%91%EC%8B%AC%EC%9C%BC%EB%A1%9C%20%EB%AA%A8%EC%9D%B4%EB%8A%94%20%EC%84%A0%EB%B6%84

 

다각형 넓이 구하기: 15 단계 (이미지 포함) - wikiHow

다각형의 넓이를 계산하는 일은 정삼각형 넓이를 구하는 것처럼 간단하기도 하지만 각 변의 길이가 다른 11각형의 넓이를 구하는 것처럼 복잡하기도 합니다. 다양한 다각형의 넓이를 구하는 방

ko.wikihow.com