Yinelemeli İkili Açıklama
Son zamanlarda, A049064 sekansına bir b dosyası genişletip ekleyerek OEIS'e ilk katkımı yaptım . Dizi ile başlar 0
ve sonraki değerler son öğenin "ikili açıklaması" verilmesinden türetilir.
Örneğin, ikinci terim olurdu 10
, çünkü 0
ilk elementte bir tane vardı. Üçüncü terim olurdu 1110
, çünkü bir 1
ve bir vardı 0
. Dördüncü olurdu 11110
. çünkü üç ( 11
ikili olarak!) 1
s ve bir tane var 0
. Aşağıda bu süreci açıklığa kavuşturmak için beşinci dönemin dökümü verilmiştir:
> 11110
> 1111 0 (split into groups of each number)
> 4*1 1*0 (get count of each number in each group)
> 100*1 1*0 (convert counts to binary)
> 100110 (join each group back together)
İşte 6. - 7. terim için bir örnek:
> 1110010110
> 111 00 1 0 11 0
> 3*1 2*0 1*1 1*0 2*1 1*0
> 11*1 10*0 1*1 1*0 10*1 1*0
> 111100111010110
Bir referans programı kontrol edebilirsiniz φ Ben terimleri hesaplamak için yaptı.
Senin işin
Standart girdi veya işlev bağımsız değişkenleri aracılığıyla bir sayı alan ve diziyi terimden terime, yeni satırla ayırarak yazdıran bir program veya işlev oluşturmanız gerekir . Düşük sayılara bakmak isterseniz, OEIS sayfasından b dosyasına başvurabilirsiniz. Ancak, programınız / işleviniz , yani 31. döneme kadar desteklemelidir . 140.000 basamak uzunluğunda olduğu gibi bu küçük bir başarı değildir δ . 31'inci terimin ne olması gerektiğini görmek istiyorsanız, Pastebin'e koydum .n
1st
(n+1)th
0 <= n <= 30
A049064(30)
Örnek G / Ç
func(10)
0
10
1110
11110
100110
1110010110
111100111010110
100110011110111010110
1110010110010011011110111010110
1111001110101100111001011010011011110111010110
1001100111101110101100111100111010110111001011010011011110111010110
func(0)
0
func(3)
0
10
1110
11110
Tek bir kural var: Standart boşluk yok!
Bu kod golf , bu yüzden en düşük bayt sayısı kazanır.
G - Gist burada bulunabilir ve bir ideone demosu burada .
δ - Merak ediyorsanız, 100'üncü dönem uzunluğundaki tahminlerim yaklaşık 3.28x10 250 karakter uzunluğundaydı, bu da herkesin hesaplaması için oldukça fazla olurdu.
[0]\n[1, 0]\n[1, 1, 1, 0]\n...