Wiem, wiem, jeszcze jedno wyzwanie dla liczb pierwszych ...
Samotny (lub pojedyncze) pierwsza to liczba pierwsza p
taka, że p-2
, p+2
, p-4
, p+4
... p-2k
, p+2k
dla niektórych k
są kompozytowe. Taką liczbę pierwszą nazywamy liczbą k
pierwszą izolowaną trzy razy.
Na przykład liczba pierwsza z 5-krotnością jest izolowana 211
, ponieważ wszystkie 201, 203, 205, 207, 209, 213, 215, 217, 219, 221
są złożone. ( p-2*5=201
, p-2*4=203
Etc.)
Wyzwanie
Biorąc pod uwagę dwie liczby całkowite wejściowe n > 3
i k > 0
, wyprowadza najmniejszą k
liczbę pierwszą izolowaną po raz trzy razy, która jest ściśle większa niż n
.
Na przykład, dla k = 5
dowolnego n
zakresu 4 ... 210
, wynik powinien być 211
, ponieważ jest to najmniejsza liczba pierwsza izolowana 5 razy, ściśle większa niż wartość wejściowa n
.
Przykłady
n=55 k=1
67
n=500 k=1
503
n=2100 k=3
2153
n=2153 k=3
2161
n=14000 k=7
14107
n=14000 k=8
14107
Zasady
- Jeśli dotyczy, możesz założyć, że wejście / wyjście będzie pasować do rodzimego typu Integer w Twoim języku.
- Dane wejściowe i wyjściowe można podać dowolną dogodną metodą .
- Dopuszczalny jest pełny program lub funkcja. Jeśli funkcja, możesz zwrócić dane wyjściowe zamiast je drukować.
- Standardowe luki są zabronione.
- To jest golf golfowy, więc obowiązują wszystkie zwykłe zasady gry w golfa, a wygrywa najkrótszy kod (w bajtach).
źródło
k
th-razy-izolowane jest również z definicjik-1
th,k-2
th, itp.Odpowiedzi:
Galaretka ,
1713 bajtówWypróbuj online!
Jak to działa
źródło
Łuska , 13 bajtów
Wypróbuj online!
Wyjaśnienie
Całkiem proste.
źródło
Java 8,
144143 bajtyWyjaśnienie:
Wypróbuj online.
źródło
Python 2 ,
105104 bajtów-1 bajt dzięki ovs
Wypróbuj online!
źródło
Stax , 14 bajtów
Uruchom i debuguj
Jest to odpowiednia reprezentacja ascii.
źródło
JavaScript (Node.js) ,
949289 bajtówWypróbuj online!
Tajemnicze jest to, że kolejne golfy powodują przepełnienie stosu. Tylko to działa w rozmiarze 14000.Wreszcie jeden golf, który nie skończy się przepełnieniem stosu przy 14000.
Wyjaśnienie
źródło
C (gcc) , 113 bajtów
Wypróbuj online!
źródło
Ruby +
-rprime
,73716157 bajtówWypróbuj online!
Dobrze się uczyć! Ja
użyciuzagubić się w chwastach zabawnych technik ...Integer#[]
iredo
technik, które nauczyłem się tutaj na PPCG.-1 bajt: użyj
n%2
zamiast,n[0]
aby uzyskać najmniej znaczący bit. Dzięki Asone Tuhid !-1 bajt: użyj operatora trójskładnikowego zamiast wyrażenia logicznego. Dzięki Asone Tuhid !
-10 bajtów: użyj operatora XOR, aby uniknąć
.prime?
dwukrotnego wpisywania ... To jest tak samo odpowiedź Asone Tuhid jak moja :)-4 bajty: Sprawdzanie wartości nawet
n
. Asone Tuhid jest non-stop.Nie golfowany:
źródło
-rprime
, 73 bajtyn%2
jest krótszy niżn[0]
w tym przypadku i?...:
może być krótszy niż&&...||
n%2+
” był bezużytecznyPari / GP , 55 bajtów
Wypróbuj online!
źródło
Perl 6 , 63 bajtów
Wypróbuj online!
źródło