Я знаю, я знаю, еще один вызов простых чисел ...
Одинокий (или изолированные) премьер - простое число p
такое , что p-2
, p+2
, p-4
, p+4
... p-2k
, p+2k
для некоторых k
все композит. Мы называем такое простое число k
изолированным простым числом.
Например, 5-кратное изолированное простое число есть 211
, поскольку все 201, 203, 205, 207, 209, 213, 215, 217, 219, 221
они составные. ( p-2*5=201
, p-2*4=203
И т.д.)
Вызов
Учитывая два входных целых числа n > 3
и k > 0
, выведите наименьшее k
изолированное простое число, которое строго больше, чем n
.
Например, для k = 5
любого и любого n
в диапазоне 4 ... 210
выходной сигнал должен быть 211
, поскольку это наименьшее простое число, изолированное в 5 раз, строго больше, чем входное n
.
Примеры
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
правила
- Если применимо, вы можете предположить, что ввод / вывод будет соответствовать типу Integer вашего языка.
- Вход и выход могут быть заданы любым удобным способом .
- Либо полная программа или функция приемлемы. Если функция, вы можете вернуть вывод, а не распечатать его.
- Стандартные лазейки запрещены.
- Это код-гольф, поэтому применяются все обычные правила игры в гольф, и выигрывает самый короткий код (в байтах).
code-golf
number-theory
primes
AdmBorkBork
источник
источник
k
th-изолированный раз также, по определению,k-1
th,k-2
th и т. Д.Ответы:
Желе ,
1713 байтПопробуйте онлайн!
Как это работает
источник
Шелуха , 13 байт
Попробуйте онлайн!
объяснение
Довольно просто.
источник
Java 8,
144143 байтаОбъяснение:
Попробуйте онлайн.
источник
Python 2 ,
105104 байта-1 байт благодаря овсу
Попробуйте онлайн!
источник
Stax , 14 байт
Запустите и отладьте его
Это соответствующее представление ascii.
источник
JavaScript (Node.js) ,
949289 байтПопробуйте онлайн!
Таинственным образом, дальнейшие гольфы заканчивают переполнением стека. Только это работает в размере 14000.Наконец один гольф, который не закончится переполнением стека на 14000.
объяснение
источник
C (gcc) , 113 байтов
Попробуйте онлайн!
источник
Ruby +
-rprime
,73716157 байтПопробуйте онлайн!
Приятно учиться! Я
используюзаблудиться в бурях прикольных приемов ...Integer#[]
иredo
методы, которые я изучил здесь на PPCG.-1 байт: используйте
n%2
вместо,n[0]
чтобы получить младший значащий бит. Спасибо, Асоне Тухид !-1 байт: использовать троичный оператор вместо логического выражения. Спасибо, Асоне Тухид !
-10 байт: используйте оператор XOR, чтобы не вводить
.prime?
дважды ... Это такой же ответ Асоне Тухида , как и мой сейчас :)-4 байта: нет ничего плохого в проверке даже значений
n
. В одиночестве Тухид нон-стоп.Ungolfed:
источник
-rprime
, 73 байтаn%2
короче, чемn[0]
в этом случае и?...:
может быть короче&&...||
n%2+
" был бесполезенПари / ГП , 55 байт
Попробуйте онлайн!
источник
Perl 6 , 63 байта
Попробуйте онлайн!
источник