Giriş (yok sayılabilir)
Tüm pozitif sayıları düzenli sıraya koymak (1, 2, 3, ...) biraz sıkıcı, değil mi? Burada, tüm pozitif sayıların permütasyonları (yeniden karıştırmaları) etrafında bir dizi zorluk var. Bu, bu serideki beşinci zorluktur ( birinci , ikinci , üçüncü ve dördüncü mücadeleye bağlantılar).
Bu meydan okumada, Fibonacci dizileri ve Beatty dizilerinin iç içe bir çığı olan Wythoff dizisini karşılayacağız !
Fibonacci sayıları muhtemelen iyi bilinen sekans çoğunuz içindir. Verilen iki başlangıç sayıları ve aşağıdaki : tarafından verilmektedir için .
Beatty sekansı , bir parametre göz önüne alındığında, ise: B ^ r_n = \ lfloor m \ rfloor için n \ ge 1 . Beatty dizisinin özelliklerinden biri, her r parametresi için , tam olarak bir parametre s = r / (r-1) olmasıdır , böylece bu parametreler için Beatty dizileri ayrılır ve bir araya getirilir , hariç tüm doğal sayıları kapsar 0 (örneğin: B ^ r \ fincan B ^ {r / (r-1)} = \ Bbb {N} \ setminus \ {0 \} ).
Şimdi akıllara durgunluk veren kısım geliyor: her satırın bir Fibonacci dizisi ve her bir sütunun bir Beatty dizisi olduğu bir dizi oluşturabilirsiniz. Bu dizi Wythoff dizisidir . En iyi bölüm: her pozitif sayı bu dizide tam olarak bir kez görünür! Dizi şöyle görünür:
1 2 3 5 8 13 21 34 55 89 144 ...
4 7 11 18 29 47 76 123 199 322 521 ...
6 10 16 26 42 68 110 178 288 466 754 ...
9 15 24 39 63 102 165 267 432 699 1131 ...
12 20 32 52 84 136 220 356 576 932 1508 ...
14 23 37 60 97 157 254 411 665 1076 1741 ...
17 28 45 73 118 191 309 500 809 1309 2118 ...
19 31 50 81 131 212 343 555 898 1453 2351 ...
22 36 58 94 152 246 398 644 1042 1686 2728 ...
25 41 66 107 173 280 453 733 1186 1919 3105 ...
27 44 71 115 186 301 487 788 1275 2063 3338 ...
...
ve sütunlarındaki bir öğe şöyle tanımlanır:
burada altın oranı: .
Bu dizinin anti-köşegenlerini takip edersek , bu zorluğun hedef dizisi olan A035513 alırız (bu dizinin Neil Sloane tarafından OEIS'e eklendiğini unutmayın !). Bu bir "saf dizisi" meydan okuma olduğu için, görev çıkışına olan için, belirli bir girdi olarak olduğu A035513 .
ye ulaşmak için takip edebileceğiniz farklı stratejiler vardır , bu da bu zorluğu (bence) gerçekten ilginç kılar.
Görev
Bir tam sayı giriş göz önüne alındığında , çıkış tam sayı formatında, olan A035513 .
Not: Burada 1 tabanlı indeksleme varsayılmıştır; 0 tabanlı indeksleme kullanabilirsiniz, böylece vb. Bunu kullanmayı seçerseniz lütfen cevabınızda bunu belirtin.
Test senaryoları
Input | Output
---------------
1 | 1
5 | 7
20 | 20
50 | 136
78 | 30
123 | 3194
1234 | 8212236486
3000 | 814
9999 | 108240
29890 | 637
için en büyük değerinin olduğunu bilmek eğlenceli olabilir
kurallar
- Giriş ve çıkış tamsayılardır
- Programınız en az 1 ile 32767 aralığındaki girdileri desteklemelidir). değerinin bu aralıkta 30 basamaklı sayılara gittiğini unutmayın ...
- Geçersiz giriş (0, kayan nokta, dize, negatif değerler vb.) Öngörülemeyen çıktılara, hatalara veya (tanımlanmamış) davranışa neden olabilir.
- Varsayılan I / O kuralları geçerlidir.
- Varsayılan boşluklar yasaktır.
- Bu kod golfü , bu yüzden bayttaki en kısa cevaplar kazanıyor
9999999