Bu, bir üçgenin merkezlerine biraz benziyor , ancak farklı bir noktaya sahip. Fermat noktası , AP + BP + CP değeri en aza indirecek üçgen ABC noktası P. İki durum söz konusudur:
120 dereceden daha büyük bir açı varsa, bu tepe fermat noktasıdır. Aksi takdirde, ABC'nin her iki tarafına eşkenar üçgenler çizin. Her eşkenar üçgenin uzak tepe noktasını ABC üçgeninin ters tepe noktasına bağlayın. Bunu üç eşkenar üçgenin her biri için yapmak, Fermat Noktası olan üç hattın tümü için tek bir ortak kesişme noktası ile sonuçlanır.
Makul bir makinede 5 saniye içinde çalışmalıdır.
Girdi : 3 noktadan oluşan bir küme, tamsayı olması gerekmez. Bu, yuvalanmış bir dizi, dize, tuples listesi, vb. (Dilinize uygun olan ne olursa olsun) olarak alınabilir.
Çıktı : Fermat noktasının koordinatları yine de, diliniz en iyi noktaları ele alıyor. Kayan nokta yanlışlıkları size karşı sayılmaz.
Test Durumları :
[[1, 1], [2, 2], [1, 2]] --> [1.2113248654051871, 1.788675134594813]
[[-1, -1], [-2, -1], [0, 0]] --> [-1, -1]
[[-1, -1], [1, -1], [0, 1]] --> [0, -0.42264973081037427]
[[0, 0], [0.5, 0.8660254037844386], [-5, 0]] --> [0, 0]
[[0, 0], [0, -5], [-0.8660254037844386, 0.5]] --> [0, 0]
Bu kod golf çok kısa kod kazanır!
-0.0bazı 0.0s yerine çıktı olup olmadığı iyi mi?
