반응형
"
19세기 독일 수학자 헤르만 민코프스키는 비유클리드 기하학 중 택시 기하학을 고안했다.
택시 기하학에서 두 점 T1(x1,y1), T2(x2,y2) 사이의 거리는 다음과 같이 구할 수 있다.
D(T1,T2) = |x1-x2| + |y1-y2|
두 점 사이의 거리를 제외한 나머지 정의는 유클리드 기하학에서의 정의와 같다.
따라서 택시 기하학에서 원의 정의는 유클리드 기하학에서 원의 정의와 같다.
원: 평면 상의 어떤 점에서 거리가 일정한 점들의 집합
"
원점을 중심으로 택시 기하학에서의 원은 결국,
(1,0) (0,1) (-1,0) (0,-1) 네 점을 지나는 네 직선으로 이루어진 사각혁이 된다.
결국 원의 넓이는 (2R)^2 * (1/2) 이고, 2 * R^2 이다.
- https://www.acmicpc.net/problem/3053
유클리드 기하학에서의 원의 넓이를 코드로 구현할 때
원주율을 필연적으로 구현하게 되는데, 다음과 같이 크게 두 가지 방법이 있다.
1. math.h 라이브러리에서 M_PI 사용 (몇 컴파일러에서는 X)
#include <math.h>
~
wide = M_PI * R * R;
2. 상수로 설정
#define PI 3.141592653589793238462643383279502884197169399375105820974944
//필요한 수까지 설정하면 된다
or
const double PI = 3.141592653589793238462643383279502884197169399375105820974944
반응형
'Algorithm' 카테고리의 다른 글
스캐폴딩 코드(Scaffolding Code) 란 무엇인가 ? (0) | 2020.10.07 |
---|---|
[C code] DP를 이용한 LIS(Longest Increasing Subsequence; 최장 증가 수열) (0) | 2020.04.12 |
[C][Python] 덱 (Deque ; Double-Ended Queue) (0) | 2020.03.21 |
[C] 동적 계획법 (DP; Dynamic Programming) (0) | 2020.03.07 |
인터벌 스케줄링 (Interval Scheduling) (1) | 2020.02.19 |