2차원 평면상에 N(3 ≤ N ≤ 10,000)개의 점으로 이루어진 다각형이 있다. 이 다각형의 면적을 구하는 프로그램을 작성하시오.
입력
첫째 줄에 N이 주어진다. 다음 N개의 줄에는 다각형을 이루는 순서대로 N개의 점의 x, y 좌표가 주어진다. 좌표값은 절댓값이 100,000을 넘지 않는 정수이다.
출력
첫째 줄에 면적을 출력한다. 면적을 출력할 때에는 소수점 아래 둘째 자리에서 반올림하여 첫째 자리까지 출력한다.
제약 조건
시간 제한 | 2 초 |
---|---|
메모리 제한 | 128 MB |
예제 입력/출력
입력
4
0 0
0 10
10 10
10 0
출력
100.0
def s():
n,*p=map(int,open(0).read().split())
a=sum(p[i]*p[i+3]-p[i+2]*p[i+1]for i in range(0,2*n-2,2))+p[2*n-2]*p[1]-p[0]*p[2*n-1]
print(f"{abs(a)/2:.1f}")
s()