Одинокі прайми (як я їх називаю) - це праймери, де задана сітка w ≥ 3
чисел із шириною - це прайми, у яких немає інших прилеглих до них ортогонально чи діагонально.
Наприклад, якщо взяти цю сітку де w = 12
(праймери виділені жирним шрифтом):
1 2 3 4 5 6 7 8 9 10 11 12
13 14 15 16 17 18 19 20 21 22 23...
...86 87 88 89 90 91 92 93 94 95 96
97 98 99 100 101 102 103 104 105 106 107 108
109 110 111 112 113 114 115 116 117 118 119 120
Ви можете бачити, що лише два прайми 103 і 107 не мають жодних ортогонально або діагонально примикань. Я пропустив розділ, тому що там немає самотніх прайменів. (крім 37, насправді)
Ваше завдання полягає в тому, щоб, задавши два входи, w ≥ 3
і i ≥ 1
визначити перший самотній простирадло в числовій сітці з шириною w
, де зазначений самотній простим числом повинен бути більшим або рівним i
. Введення даних може прийматися у будь-якому розумному форматі (включаючи прийняття їх як рядки). Це гарантовано, що буде самотній прайм для ширини w
.
Сітка не загортається.
Приклади:
w i output
11 5 11
12 104 107
12 157 157
9 1 151
12 12 37
Оскільки це код-гольф , виграє найкоротший код!
w=12
не37
самотній прем'єр? Жодне з номерів, що його оточують,{25, 26, 38, 49, 50}
- не є простими.