Szukamy sekwencji
Weź liczby naturalne
1,2,3,4,5,6,7,8,9,10,11,12,13,14...
Konwertuj na base-2
1,10,11,100,101,110,111,1000,1001,1010,1011,1100,1101,1110...
Połącz powyższe liczby
110111001011101111000100110101011110011011110...
Partition ten numer w prime-Kawałki
(kawałki zawierające doskonałą liczbę cyfr)
Najwyżsi są podejmowane w celu asceding2,3,5,7,11,13,17...
[11][011][10010][1110111][10001001101][0101111001101][1110...]
i znajdź sumę cyfr każdego fragmentu
Primes 2 3 5 7 11 13 17
Chunks [11][011][10010][1110111][10001001101][0101111001101][1110...]
SumOfDigits 2 2 2 6 5 8
Sekwencja
2, 2, 2, 6, 5, 8, 9, 10, 14, 22, 11, 18, 25, 27, 32, 21, 28, 32, 40, 40, 49, 49, 32, 41, 49, 53, 63, 55, 63, 70, 87, 73, 51, 63, 71, 78, 78, 90, 107, 86, 96, 108, 115, 128, 138, 92, 83, 95, 102, 110, 130, 106, 122, 141, 149, 163, 130, 140, 151, 165, 181, 165, 204, 200, 234, 100, 130, 138, 167, 149, 169, 180, 209, 166, 189, 194, 222, 205, 234, 260, 216, 206, 217, 241, 240, 267, 289, 242, 274, 308, 286, 329, 338, 155, 189, 225, 197, 240, 272, 217, 254, 282, 287, 317, 281, 256, 299, 286, 331, 337, 316, 350, 354, 391, 367, 282, 327, 313, 364, 358, 348, 397, 406, 466 ...
Wyzwanie
Znajdź nth
termin powyższej sekwencji
Wejście
Liczba całkowita n>0
Przypadki testowe
1->2
3->2
6->8
36->78
60->165
160->581
260->1099
350->1345
To jest codegolf. Najkrótsza odpowiedź w bajtach wygrywa!
Odpowiedzi:
Łuska , 8 bajtów
Wypróbuj online!
Wyjaśnienie
źródło
Galaretka , 12 bajtów
Wypróbuj online!
Jak to działa
źródło
05AB1E , 12 bajtów
Kod
Może być dość powolny w przypadku dużych liczb:
Wykorzystuje kodowanie 05AB1E. Wypróbuj online!
Wyjaśnienie
źródło
Mathematica, 71 bajtów
Wypróbuj online!
źródło
Galaretka , 21 bajtów
Wypróbuj online!
źródło
Galaretka , 16 bajtów
Wypróbuj online!
Wyjaśnienie
źródło
R ,
206200 bajtówWypróbuj online!
Algorytm próbuje także „zaoszczędzić” na przestrzeni, iteracyjnie usuwając bity podczas przechodzenia przez liczby pierwsze. Wydaje mi się, że konwersja dziesiętna na bit może być prawdopodobnie krótsza, ale nie mogłem wymyślić innych alternatyw.
Zaoszczędź 6 bajtów dzięki Jonathanowi Frenchowi.
źródło
p=j=2
jest dwa bajty krótszy niżp=2;j=2
.a=p
, oszczędzając jeszcze dwa bajty.y=1
, zastąpionyy=2
, co daje 200 bajtów .JavaScript (ES6), 144 bajty
Nie golfił
Przypadki testowe
Pokaż fragment kodu
źródło
Python 2 , 114 bajtów
Wypróbuj online!
źródło
JavaScript (ES6),
138132123 bajtówPrzypadki testowe
Wypróbuj online!
Próbny
Uwaga: Uwzględniono tutaj tylko „bezpieczne” przypadki testowe (gwarantowane działanie w Chrome, Firefox i Edge). Być może będziesz musiał zwiększyć rozmiar stosu wywołań swojego silnika, aby przejść inne.
Pokaż fragment kodu
Sformatowane i skomentowane
źródło
Perl 6 , 67 bajtów
Sprawdź to
Rozszerzony:
źródło
Python 2 ,
143139133 bajtów-4 bajty dzięki @ErikTheOutgolfer
Wypróbuj online!
źródło
J, 48 bajtów
wyjaśniono
Wypróbuj online!
źródło
/.
):_1({]+//.$$&;<@#:@#\)[:#~p:@i.
JavaScript 1+ + substr, 135 bajtów
źródło