Üçgenin küresel fazlalığı
Hepimizin bildiği gibi, herhangi bir düzlemsel üçgenin açılarının toplamı 180 dereceye eşittir.
Bununla birlikte, küresel üçgenin için, açıların toplamı her zaman daha 180 derece. Küresel üçgen açıların toplamı ile 180 derece arasındaki farka küresel fazlalık denir . Görev, bir üçgenin küresel fazlalığını verilen tepe koordinatları ile hesaplamaktır.
Bazı arka plan
Küresel bir üçgen, kürenin üç büyük dairesi tarafından tanımlanan kürenin bir parçasıdır.
Küresel üçgenin her iki tarafı ve açıları, açı ölçüsü açısından ölçülür, çünkü her bir taraf kürenin kesişimi ve kürenin ortasındaki tepe noktası olan bazı düzlemsel bir açı olarak düşünülebilir:
Her üç ayrı büyük daire 8 üçgen tanımlar, ancak yalnızca uygun üçgenleri dikkate alırız , yani. açısı ve yan ölçüleri tatmin eden üçgenler
Bir üçgenin köşelerini coğrafi koordinat sistemi olarak tanımlamak uygundur. Uçlarının λ boylamı ve enlemi given verilen bir kürenin uzunluğunu hesaplamak için aşağıdaki formülü kullanabiliriz:
, nerede
veya daha açık bir şekilde:
(kaynak: https://en.wikipedia.org/wiki/Haversine_formula )
Küresel bir üçgeni çözmek için kullanılabilecek iki temel formül şunlardır:
- kosinüs yasası:
- sinüs yasası:
(kaynak: https://en.wikipedia.org/wiki/Spherical_trigonometry#Cosine_rules_and_sine_rules )
Üç taraf verildiğinde, kosinüs kuralını kullanarak açıları hesaplamak kolaydır:
Son olarak, bir üçgenin küresel fazlalığı tanımlanır:
Bir üçgenin küresel fazlalığı ve alanı arasındaki ilişki hakkında ilginç olan şey:
Yani bir birim kürede, bir üçgenin fazlası o üçgenin alanına eşittir!
Görev
Üçgen köşeleri koordinatları verildiğinde, bir üçgenin küresel fazlalığını derece cinsinden hesaplayacak bir işlev veya program yazın. Tepe koordinatları, coğrafi koordinat sistemi olarak sağlanır.
Her tepe noktası formda geçirilmelidir [latitude in degrees][N|S][longitude in degrees][E|W]
. Boylam ve / E
veya W
enlem 90 olduğunda atlanabilir . 90N
, 90S
, 10N100E
, 30S20W
Ancak uygun köşe açıklamalarıdır 80N
veya 55S
değildirler.
Test durumlarında enlemler ve boylamlar her zaman tamsayıdır.
Bir dereceden az hatalı cevaplar kabul edilecektir (aşağıdaki örneklerde olduğu gibi). Sonuç, size kolaylık sağlamak için hem gerçek hem de tamsayı olarak elde edilebilir.
Örnekler
Giriş
90N0E
0N0E
0N90E
Çıktı
89.999989
Giriş
90N
0N0E
0N90E
Çıktı
89.999989
Giriş
0N0E
0N179E
90N0E
Çıktı
178.998863
Giriş
10N10E
70N20W
70N40E
Çıktı
11.969793
Tüm test durumlarında boylam ve enlem tam sayıdır. Bir köşe tek dize / literal olarak geçmiş olması gerekir, böylece köşe koordinatları Ayrıştırma, görevinin bir parçasıdır, bu geçmesine izin vermiyor 80N20E
dört parametre / dizeleri olarak: 80
, N
, 20
, E
.
Bu, köşelerin hepsinin farklı olduğu ve üç köşeden hiçbirinin bir antipodal nokta çifti oluşturmadığı garanti edilir.
puanlama
Bu kod golf , bu yüzden en kısa kod kazanır.