다각형의 넓이를 구하는 식으로 사선식이 있네요.
이미지 출처 : http://jungol.co.kr/bbs/board.php?bo_table=pbank&wr_id=431&sca=30&page=2
이러한 이치로 다음과 같은 삼각형의 넓이도 꼭지점 위치만 가지고도 간단하게 넓이를 구할 수 있습니다.
이미지출처 : http://elwlsek.tistory.com/195
알고리즘 문제에 단순다각형의 면적을 구하는 문제도 이 식을 이용하면 아주 간단하게 풀리는것을 확인 할수가 있었습니다.
3005 : 단순다각형의 면적
문제출처 : http://jungol.co.kr/bbs/board.php?bo_table=pbank&wr_id=2276&sca=30d0
2차원 평면에 N개의 점으로 이루어진 단순 다각형에 대한 정보가 주어진다.
주어진 단순 다각형의 면적을 구하는 프로그램을 작성해보자.
[Copy]4 0 0 100 0 100 100 0 100 | [Copy]10000.0 |
문제 풀이)
#include <iostream> #include <stdio.h> #include <algorithm> using namespace std; int x[10001],y[10001]; int main() { //freopen("input.txt","r",stdin); int n; scanf ( "%d" ,&n); for ( int i=0;i<n;i++) { scanf ( "%d %d" ,&x[i],&y[i]); } long long ans = 0; for ( int i=0;i<n;i++) { int j = (i + 1) % n; //다음 포지션 ans+=( long long )x[j]*y[i] - ( long long )x[i]*y[j]; } ans = abs (ans); printf ( "%.1lf\n" ,( double )ans/2.0); return 0; }
|
사업자 정보 표시
원당컴퓨터학원 | 기희경 | 인천 서구 당하동 1028-2 장원프라자 502호 | 사업자 등록번호 : 301-96-83080 | TEL : 032-565-5497 | Mail : icon001@naver.com | 통신판매신고번호 : 호 | 사이버몰의 이용약관 바로가기
'강의자료 > 정보영재' 카테고리의 다른 글
진실의 마을에 가고 싶어요. (3) | 2017.09.16 |
---|---|
정보올림피아드 2004년 예선 초등 9번문제 풀이 (2) | 2017.09.14 |
우리 아이가 정보올림피아드에 소질이 있을까? (4) | 2017.09.07 |
2017년 정보올림피아드 예선 중13번 문제 풀이 (2) | 2017.08.31 |
정보올림피아드 2017년 전국대회 본선 문제 초등 1번 딱지문제 풀이 (293) | 2017.08.22 |