To jest post Rabusia. Cop post jest tutaj .
Twoim zadaniem jest, aby wejście całkowitą N i wysyłać Pn cyfrowy w sekwencji OEIS A002942 .
Sekwencja składa się z kwadratowych liczb zapisanych wstecz:
1, 4, 9, 61, 52, 63, 94, 46, 18, 1, 121, 441, ...
Zauważ, że zera wiodące są usuwane ( 100 zmienia się na 1 , a nie 001 ). Łączenie tego w ciąg (lub jedną długą liczbę daje):
1496152639446181121441
Wyrzucisz N - tą cyfrę w tym ciągu / numerze. Możesz wybrać N jako 0 lub 1 indeks (proszę podać, który wybierzesz).
Przypadki testowe (indeksowane 1):
N = 5, ==> 1
N = 17, ==> 1 <- Important test case! It's not zero.
N = 20, ==> 4
N = 78, ==> 0
N = 100, ==> 4
N = 274164, ==> 1
Twój kod powinien działać dla liczb do N = 2 ^ 15 (chyba że twój język domyślnie nie obsługuje 32-bitowych liczb całkowitych, w którym to przypadku N może być niższy).
Rabusie:
Powinieneś spróbować złamać posty gliniarzy.
Twój kod musi być w tym samym języku co posterunek gliny i mieć odległość Levenshteina dokładnie równą odległości podanej przez gliniarza. Twój kod nie może być dłuższy niż oryginalne rozwiązanie (ale może mieć ten sam rozmiar).
Tutaj możesz sprawdzić odległość Levenshtein!
Zwycięzcą zostanie złodziej, który złamał najwięcej postów.
źródło
Odpowiedzi:
Haskell , Laikoni
Wypróbuj online!
(*1)
Było konieczne dla typu kontroli.źródło
JavaScript, Arnauld
źródło
Array(m+1)
to naprawiłem.cQuents 0 , Stephen
Wypróbuj online! Nie mam pojęcia, jak działa ten kod, ale nadal działał po usunięciu
*
.źródło
Wolfram Language (Mathematica) , Jenny_mathy
Wypróbuj online!
Alternatywna wersja również na odległość 43:
Wypróbuj online!
źródło
6502 Kod maszynowy (C64), Felix Palmen
Przetestowałem to ze wszystkimi testowymi pytaniami i kilkoma dodatkami (np. 2 ^ 15 ... które zajęły trochę czasu) i wydaje się, że działa tak samo jak oryginał z LD = 1.
Demo online , użycie: sys49152, n gdzie n oznacza wejście indeksowane 0.
źródło
Lua , Katenkyo
Wypróbuj online!
Nie znam Lua, ale to było proste, po prostu zastąpiłem spację nową linią.
źródło
(0+)(%d+)$
z(0+)(%d+)
, więc było o regex ^^”Python 3 , HyperNeutrino
Wypróbuj online!
źródło
''
zamiast""
lambda i:"".join(str( (-~k)**2)[::-1]for k in range(i+1))[i]
.Python 2 , dylnan
Wypróbuj online!
Uwaga: to zgłoszenie policjanta było błędne i nie działało dla danych wejściowych niższych niż 5. Podczas gdy ja byłem przy nim, zbudowałem to rozwiązanie, które ma prawidłową odległość Levenshteina ORAZ naprawia błąd.
źródło
Perl 5, (-p) Xcali
Zaktualizowano po komentarzu, Levenshtein Odległość między
i
ma 55 lat
Wypróbuj online
źródło
-a
kontra-p
. Dwa rozwiązania, które wymyśliłem, wykorzystywały te same flagi. Sądzę, że flaga zostanie po prostu przyczepiona do frontu bez spacji, ale jestem skłonny dać się zwieść innym.Java 8, Kevin Cruijssen
Wypróbuj online!
Zmień dziennik
.replaceAll()
znew Long()
.źródło
n->{String r="";for(int i=1;r.length()<=n+1;r+=new Long(new StringBuffer(i*i+++"").reverse()+""));return r.charAt(n);}
( 118 bajtów, 92 LD w porównaniu z moją inną odpowiedzią).Oktawa , Stewie Griffin
Wypróbuj online!
Próbowałem własnej odpowiedzi Octave i zauważyłem już istniejącą. Mój był już znacznie krótszy, więc dodanie komentarza na końcu wystarczyło, aby dostać się na wymaganą odległość 63.
źródło
input()
i wszystko, co się z tym wiąże ...PHP, Jo.
Wypróbuj online!
(Planowałem zmienić nierówność, aby uzyskać jeszcze większy LD ...)
źródło
6502 Kod maszynowy (C64), Felix Palmen
Może być również „prostym” pęknięciem, ale wydaje się, że działa jak oryginał.
Posiadanie LD = 1 jest tak kuszące, aby spróbować go złamać (przepraszam, Felix). :)
Demo online , użycie: sys49152, n gdzie n oznacza wejście indeksowane 0.
źródło
E9
(polecenie odejmowania) przezEB
który jest niezdefiniowany w 6502 kodu maszynowego, ale dzieje się to samo na NMOS 6502 i 6510 żetonów. Ten program mógłby na przykład ulec awarii na C64 DTV1. Ale jest mało prawdopodobne, aby znaleźć prawdziwy C64, który nie wykona go poprawnie, więc można go uznać za prawidłowy crack? Mogę poprosić o opinię na temat meta ....