문제 출처 : www.acmicpc.net/problem/2166
문제 해석 : 다각형의 넓이를 구하는 문제이다.
문제 풀이 : 신발끈 공식을 활용해서 풀이할 수 있다.
풀이 시간 (기록용) : 40분 12초
풀이 코드
from collections import deque
import math
def ccw(x1, y1, x2, y2, x3, y3):
return (x1 * y2 + x2 * y3 + x3 * y1) - (y1 * x2 + y2 * x3 + y3 * x1)
N = int(input())
x, y = map(int, input().split())
position = deque()
for _ in range(N-1):
position.append(list(map(int, input().split())))
answer = 0
for i in range(N-2):
answer += ccw(x, y,
position[i][0], position[i][1],
position[i+1][0], position[i+1][1])
print(round(abs(answer)/2, 1))
author : donghak park
contact : donghark03@naver.com
## 문제의 저작권은 백준 알고리즘 사이트에 있습니다. 혹시 문제가 되는 부분이 있으면 연락 바랍니다.
'📊알고리즘, 문제풀이 > 📈문제풀이 (PS)' 카테고리의 다른 글
[알고리즘][Python] 백준 14499 주사위 굴리기 문제 풀이 (0) | 2021.03.25 |
---|---|
[알고리즘][Python] 백준 1110 더하기 사이클 문제 풀이 (0) | 2021.03.16 |
[알고리즘][Python] 백준 2143 두 배열의 합 문제 풀이 (1) | 2021.03.13 |
[알고리즘][Python] 백준 2056 작업 문제 풀이 (0) | 2021.03.12 |
[알고리즘][Python] 백준 1987 알파벳 문제 풀이 (0) | 2021.03.11 |