Bu kod golf, bir cebe düşmeden önce tam olarak n yastık vurur en kısa atış yönünü belirlemek zorunda kalacak .
Bilardo masası, aşağıdaki özelliklere sahip 6 cepli bilardo masasıdır:
- Boyutlar değişkendir ( a x b )
- Sürtünme yok: top cebe düşene kadar sonsuza kadar yuvarlanacak
- Cepler ve top boyutları neredeyse sıfırdır. Bu, topun sadece aynı konuma sahip olmaları durumunda cebe düşeceği anlamına gelir.
- Top başlangıçta sol alt deliğe yerleştirilir (ancak içine düşmez)
Tablonun boyutlarını ( a , b ) ve giriş olarak n'ye vurulacak minder sayısını alan ve cebe düşmeden önce tam olarak n yastıklara çarpan en kısa yolun derecesini veren bir tam program veya işlev oluşturun .
- a > 0
- b > 0
- 0 <= n <10000000
- 0 < alfa <90 (derece olarak) hassasiyet: en az 10 ^ -6
örnekler:
ile bir = 2, b = 1 olduğunda, n, mümkün olan üç güzergâh mevcuttur = 1: (1) (2) (3) aşağıdaki şekil üzerinde. (1) sayısı en kısa olanıdır, bu nedenle çıktı atanmalıdır (2) = 63.43494882292201 derece
İçin bir çözüm , bir = 2, b = 1 olduğunda, n, (4/3) 53,13010235415598 derece = atan = 4
test örnekleri :
a = 2, b = 1, n = 1, -> alpha = 63.43494882292201
a = 2, b = 1, n = 2, -> alpha = 71.56505117707799
a = 2, b = 1, n = 3, -> alpha = 75.96375653207353
a = 2, b = 1, n = 4, -> alpha = 53.13010235415598
a = 2, b = 1, n = 5, -> alpha = 59.03624346792648
a = 2, b = 1, n = 6, -> alpha = 81.86989764584403
a = 4.76, b = 3.64, n = 27, -> alpha = 48.503531644784466
a = 2, b = 1, n = 6, -> alpha = 81.86989764584403
a = 8, b = 3, n = 33, -> alpha = 73.24425107080101
a = 43, b = 21, n = 10005, -> alpha = 63.97789961246943
Bu kod / bilardo golf: en kısa kod kazanır!
n
yastıkları veya en azındann
minderler?