Daireler ve karelerin tek, kesin bir merkez noktası vardır. Bununla birlikte, bir üçgen merkezi kavramı uzun zamandır tartışılmaktadır. Eski Yunanlılar tarafından dört farklı merkez biliniyordu:
- Incenter : Üçgenin açılı açıortaylarının kesişimi
- Centroid : Üçgenin her köşesinden çizgilerin karşı tarafının ortasına doğru kesişimi
- Daire : Yanların dik açıortaylarının kesişimi
- Ortoenter : Üçgenin rakımlarının kesişimi
Euler daha sonra centroid, circumcenter ve ortocenter'ın herhangi bir üçgende eşdoğrusal olduğunu kanıtladı. Bu üç noktanın bir üçgen içinde bulunduğu çizgiye Euler Hattı denir . Tüm noktaların çakıştığı eşkenar üçgen hariç her üçgen için tanımlanmıştır.
Zorluğunuz, iki giriş verildiğinde, belirli bir merkez veya üçgenin Euler Çizgisini çıktı veren en kısa program veya işlevi oluşturmaktır. Birincisi, bir üçgenin her bir tepe noktasının koordinatlarını belirtir. İkincisi, ne çıkacağını belirleyen 1 ila 5 arasında bir tam sayıdır.
1 - Incenter
2 - Centroid
3 - Circumcenter
4 - Orthocenter
5 - Equation of Euler Line
(if the Euler Line is vertical, output the `x` value of the line
(e.g. output `5` if the equation of the line is `x = 5`))
Verilen köşelerin hiçbir zaman eş zamanlı olmayacağını ve her zaman tamsayı koordinatları olacağını varsayabilirsiniz (bu aynı zamanda @ R.Kap'ın yorumuna göre giriş olarak eşkenar üçgen olması olasılığını da hariç tutar ).
Giriş dizisi, dilinizde geçerli bir iç içe dizidir ve girdi makul bir biçimde olmalıdır. Herhangi bir kayan nokta değeri en az 3 ondalık basamağa gösterilmelidir, ancak daha az olmamalıdır. Çıkarılan bir nokta, giriş biçimiyle eşleşen, dilinizde geçerli bir dizi olmalıdır.
Test senaryoları:
Input: [(-2, 0), (1, 0), (0, 1)] 1
Output: (-0.089, 0.451)
Input: [(-2, 0), (1, 0), (0, 1)] 2
Output: (-0.333, 0.333)
Input: [(-2, 0), (1, 0), (0, 1)] 3
Output: (-0.5, -0.5)
Input: [(-2, 0), (1, 0), (0, 1)] 4
Output: (0, 2)
Input: [(-2, 0), (1, 0), (0, 1)] 5
Output: 5x + 2
Açıklama: Girdi stdin'den, boşluktan veya yeni satırdan ayrılmış olarak ya da bir işleve argümanlar olarak olabilir. Ancak çıktı stdout'a yazılmalıdır.
y=f(x).
(if the triangle is equilateral, output the point at which the centers meet)olduğu gibi değil sadece koordinatlar tam sayı kullanılarak koordinat düzleminde bir eşkenar üçgen oluşturmak mümkündür.