İlk olarak, Beatty dizileri hakkında konuşalım . Pozitif mantık dışı sayısı göz önüne alındığında R , biz pozitif tamsayılar çarparak sonsuz bir dizi gerçekleştirebilmesi r amacıyla ve ortaya çıkan hesaplama söz alan. Örneğin,
Eğer r > 1, biz özel bir durum var. Başka bir akıl sayıda oluşturabilirler s olarak s = r / ( r - 1). Bu, daha sonra kendi Beatty dizisini oluşturabilir B s . Düzgün bir hile yani B r ve B ler olan tamamlayıcı her bir pozitif tam sayı, iki dizinin arasında tam olarak biri olduğu anlamına.
Eğer r = ϕ, altın oranı ayarlarsak , s = r + 1 ve iki özel dizi elde ederiz . Düşük Wythoff sekansı için r :
1, 3, 4, 6, 8, 9, 11, 12, 14, 16, 17, 19, 21, 22, 24, 25, 27, 29, ...
ve üst Wythoff dizisi için s :
2, 5, 7, 10, 13, 15, 18, 20, 23, 26, 28, 31, 34, 36, 39, 41, 44, 47, ...
Bunlar sırasıyla OEIS üzerindeki A000201 ve A001950 dizileridir .
Meydan okuma
Pozitif bir giriş tamsayısı verildiğinde 1 <= n <= 1000
, girdinin alt Wythoff sekansında mı yoksa üst sekansında mı olduğunu gösteren iki ayrı değerden birini çıktılayın . Çıkış değerleri -1
ve 1
, true
ve false
, upper
ve lower
vb. Olabilir.
Gönderdiğiniz algoritmanın teorik olarak tüm girdiler için çalışması gerekir, ancak uygulamada yalnızca ilk 1000 giriş numarasıyla çalışması gerekir.
G / Ç ve Kurallar
- Giriş ve çıkış herhangi bir uygun yöntemle verilebilir .
- Giriş ve çıktının, dilinizin yerel sayı türüne uygun olduğu varsayılabilir.
- Tam bir program veya bir işlev kabul edilebilir. Bir işlev varsa, çıktıyı yazdırmak yerine döndürebilirsiniz.
- Standart boşluklar yasaktır.
- Bu kod golfüdür, bu nedenle her zamanki golf kuralları geçerlidir ve en kısa kod (bayt cinsinden) kazanır.