삼각형의 구형 초과
우리 모두 알다시피, 평면 삼각형의 각도의 합은 180 도입니다.
그러나 구형 삼각형의 경우 각도의 합은 항상 180 도보 다 큽니다 . 구형 삼각형 각도의 합과 180 도의 차이를 구형 초과 라고 합니다. 주어진 정점 좌표를 가진 삼각형의 구형 과잉을 계산하는 것입니다.
일부 배경
구형 삼각형은 구의 3 개의 큰 원으로 정의 된 구의 일부입니다.
구면 삼각형의 양쪽과 각도는 각도 측정 용어로 측정됩니다. 각면은 구의 교차점과 구의 중심에서 정점과의 일부 평면 각도로 간주 될 수 있기 때문입니다.
각각의 별개의 큰 원은 8 개의 삼각형을 정의하지만 적절한 삼각형 만 고려 합니다. 각도와 측면 측정 값이 만족되는 삼각형
지리적 좌표계 측면에서 삼각형의 정점을 정의하는 것이 편리합니다. 끝의 경도 λ와 위도 Φ가 주어지면 구의 호의 길이를 계산하기 위해 다음 공식을 사용할 수 있습니다.
, 어디
또는 더 명확하게 :
(출처 : https://en.wikipedia.org/wiki/Haversine_formula )
구형 삼각형을 푸는 데 사용할 수있는 두 가지 기본 공식은 다음과 같습니다.
- 코사인의 법칙 :
- 죄의 법칙 :
(출처 : https://en.wikipedia.org/wiki/Spherical_trigonometry#Cosine_rules_and_sine_rules )
3면이 주어지면 코사인 규칙을 사용하여 각도를 쉽게 계산할 수 있습니다.
마지막으로, 구형의 초과 삼각형이 정의됩니다.
삼각형의 구형 과잉과 그 영역 사이의 관계에 대한 흥미로운 점 :
따라서 단위 구에서 삼각형의 초과는 해당 삼각형의 면적과 같습니다!
작업
삼각형 정점 좌표가 주어지면 삼각형의 구형 초과 각도를도 단위로 계산하는 함수 또는 프로그램을 작성하십시오. 꼭짓점 좌표는 지리적 좌표계 측면에서 제공됩니다.
각 정점은 형식으로 전달되어야합니다 [latitude in degrees][N|S][longitude in degrees][E|W]
. 위도가 90 일 때 경도 및 E
/ 또는 W
건너 뛸 수 있습니다 . 90N
, 90S
, 10N100E
, 30S20W
동안, 적절한 정점의 설명입니다 80N
또는 55S
수 없습니다.
위도 및 경도는 테스트 사례에서 항상 정수입니다.
1도 미만의 오류가있는 답변이 수락됩니다 (아래 예와 같이). 결과는 실제 또는 정수로 렌더링 할 수 있으므로 편의에 따라 다릅니다.
예
입력
90N0E
0N0E
0N90E
산출
89.999989
입력
90N
0N0E
0N90E
산출
89.999989
입력
0N0E
0N179E
90N0E
산출
178.998863
입력
10N10E
70N20W
70N40E
산출
11.969793
모든 테스트 사례에서 경도와 위도는 정수입니다. 정점은 단일 문자열 / 문자로 전달해야하므로 정점 좌표를 구문 분석하는 것은, 작업의 일부이며,이 통과 허용하지 않는다 80N20E
네 개의 매개 변수 / 문자열로 : 80
, N
, 20
, E
.
이것은 꼭짓점이 모두 구별되고 3 개의 꼭짓점 중 2 개가 대 지점을 만들지 않는다는 것을 보장합니다.
채점
이것은 code-golf 이므로 가장 짧은 코드가 승리합니다.