Twoim zadaniem jest napisanie kodu, który generuje sekwencję OEIS i zawiera nazwę sekwencji w code ( A______
). Łatwo, prawda? Cóż, oto haczyk, twój kod musi również wypisać drugą osobną sekwencję, gdy nazwa sekwencji w kodzie zostanie zmieniona na nazwę drugiej sekwencji.
Wejście wyjście
Kod może być funkcją lub kompletnym programem, który pobiera n za pomocą standardowej metody wprowadzania i generuje n- ty ciąg sekwencji indeksowany przez podany indeks na stronie OEIS.
Musisz obsługiwać wszystkie wartości podane w plikach OEIS b dla tej sekwencji, dowolna liczba nie w plikach b nie musi być obsługiwana.
Punktacja
To jest golf-golf. Twój wynik będzie liczbą bajtów w kodzie, przy czym mniej bajtów będzie lepszych.
Przykład
Oto przykład w Haskell, który działa dla A000217 i A000290.
f x|last"A000217"=='0'=x^2|1>0=sum[1..x]
A
wymagane?Odpowiedzi:
JavaScript (ES6),
1615 bajtówWspółpracuje z A000004 (wszystkie 0) i A010709 (wszystkie 4).
Poprzednie 17-bajtowe rozwiązanie współpracuje z A010850 do A010859 włącznie:
Poprzednie 25-bajtowe rozwiązanie współpracuje z A010850 do A010871 włącznie:
źródło
C #, 28 bajtów
Współpracuje z A000290 (kwadraty) i A000578 (kostki) .
Wypróbuj online!
źródło
Haskell, 28 bajtów
Druga sekwencja to A007953. Wypróbuj online!
źródło
cQuents , 16 bajtów
Wypróbuj online! , A000007 ,
1,0,0,0,0...
Wypróbuj online! , A000004 ,
0,0,0,0,0...
Wyjaśnienie
Dzięki Conor O'Brien za
4//5 = 0
i7//5 = 1
.Gdyby specyfikacja była bardziej elastyczna, byłaby
O7A$
iO4A$
.źródło
Cubix , 28 bajtów
zwraca idealny kostki ,
a(n)=n^3
.Wypróbuj online!
Z drugiej strony,
zwraca idealny kostki minus jeden ,
a(n)=n^3-1
.źródło
dc , 13 bajtów
Edycja: Najwyraźniej OEIS wymienia moce od
0
th do30
th - Właśnie przeszukałem te sekwencje i okazało się, że oryginalne13
rozwiązanie bajtowe jest najbardziej golfowe. Ale znalazłem inne rozwiązanie dla1
bajtu więcej, które działa dla9
sekwencji.Rozwiązanie dla A000012 (stała sekwencja 1):
Wypróbuj online!
Rozwiązanie dla A001477 (nieujemne liczby całkowite):
Wypróbuj online!
Rozwiązanie dla A000290 (idealna sekwencja kwadratów):
Wypróbuj online!
Niegolfowane / Wyjaśnienie
Rozwiązania te wykorzystują fakt, że
dc
interpretujeA
jako10
, więcA001477
staje się wartością10001477
. Dalsze eksploatuje że sekwencje sąn^0
,n^1
in^2
który zbiega się z10000012 % 4 == 0
,10001477 % 4 == 1
i10000290 % 4 == 2
.Więc te sekwencje są
xyz(n) = n ^ (xyz % 4)
.14 bajtowe rozwiązanie dla 9 sekwencji
Pomysł jest nadal ten sam, tym razem musimy zrobić
% 97
, aby uzyskać odpowiednią moc - działa dla sekwencji A010801 , A010802 , A010803 , A010804 , A010805 , A010806 , A010807 , A010808 i A010809 (są to sekwencjen^13
, .. .,n^21
).Oto pierwszy:
Wypróbuj online!
źródło
Python 2,
2517 bajtówDziała dla A000004 i A000012. (dane wejściowe są ignorowane, ponieważ wszystkie sekwencje są stałymi terminami).
źródło
Befunge 98, 10 bajtów
Działa również dla A000004. Wyjście według kodu wyjścia.
źródło
Galaretka , 17 bajtów
Wypróbuj online!
Współpracuje również z A000290
źródło
PowerShell , 23 bajty
Wypróbuj online!
Używa A000012 (sekwencja wszystkich zer ) i A000004 (sekwencja wszystkich zer).
Wykorzystuje kilka schludnych sztuczek. Używamy
0x
jako operator szesnastkowy w sekwencji, która nam daje167772178
. Że w porównaniu do sprawdzenia, czy jego-eq
UAL się160mb+18
za pomocąmb
operatora (160mb
ma167772160
). Ten wynik boolowski jest następnie rzutowany jako int z+
wyjściem właściwego1
lub0
. Zauważ, że każda sekwencja w kodzie innym niż A000012 spowoduje0
wyjście.źródło
Neim ,
109 bajtówWyjaśnienie:
A000012 (wszystkie) i A007395 (wszystkie dwie pary)
Funkcja, która pobiera dane wejściowe na górze stosu i pozostawia dane wyjściowe na górze stosu.
Wypróbuj online!
źródło
Gaia , 9 bajtów
Współpracuje z A000012 i A000004 .
Wypróbuj A000012!
Wypróbuj A000004!
Wyjaśnienie
źródło
PowerShell , 12 bajtów
Wypróbuj online!
Działa dla A000012 (sekwencja wszystkich zer) i A000004 (sekwencja wszystkich zer).
Port odpowiedzi Pythona na ppperry .
źródło
05AB1E , 9 bajtów
Wypróbuj online!
Działa dla A000004 i A000012.
źródło
Właściwie 10 bajtów
Wypróbuj online!
Działa dla A000004 i A000012.
źródło
Galaretka , 10 bajtów
Wypróbuj online!
Działa dla A000004 i A000012.
źródło
Pyth, 11 bajtów
Wypróbuj tutaj.
Obsługuje A000004 i A000012.
źródło
Łuska , 20 bajtów
Ta zwraca nieco bardziej interesujące sekwencje, ponownie rozwiązania są
1
indeksowane.Działa to dla A000040 (liczby pierwsze):
Wypróbuj online!
I ten dla A000045 (liczby Fibonacciego):
Wypróbuj online!
Wyjaśnienie
Wykorzystuje to fakt, że ostatnia cyfra nazw sekwencji ma inną parzystość:
źródło
AHK , 40 bajtów
Wynik:
0,0,0,0,0,0,0,0,0,0,0,0,...
Wynik:
1,1,1,1,1,1,1,1,1,1,1,1,...
To może nie jest najkrótszy kod, ale założę się, że jest to najkrótsza para sekwencji, jaką możemy znaleźć. A000004 to sekwencja zerowa, a A000012 to sekwencja jedynek. Po prostu podziel liczbę przez 9 i wyprowadź wynik na zawsze.
źródło
QBIC , 28 bajtów
Przełącza między sekwencjami A000034 (1, 2, 1, 2, 1 ...) i A000035 (0, 1, 0, 1, 0, 1 ...)
Wyjaśnienie
źródło
Łuska , 16 bajtów
Oba rozwiązania są
1
indeksowane.Działa to dla A000351 (moce 5):
Wypróbuj online!
A ten dla A000007 (potęgi 0):
Wypróbuj online!
Wyjaśnienie
Wykorzystuje to, że nazwy A000351 , A000007 zawierają prawą cyfrę D w pozycji 6, tak że sekwencja jest
D^0,D^1,D^2,...
:źródło
MATL , 14 bajtów
A000027 Pozytywne liczby całkowite
Wypróbuj online!
A001477 Nieujemne liczby całkowite
Wypróbuj online!
źródło