Os números primos solitários (como eu os chamo) são números primos, nos quais, dada uma grade numérica com largura w ≥ 3
, são números primos que não possuem outros números primos adjacentes a eles, ortogonal ou diagonalmente.
Por exemplo, se levarmos essa grade para onde w = 12
(primos destacados em negrito):
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
Você pode ver que apenas os dois primos 103 e 107 não têm primos adjuvantes ortogonal ou diagonalmente. Eu pulei uma seção porque não há primos solitários lá. (exceto 37, na verdade)
Sua tarefa é, com duas entradas w ≥ 3
e i ≥ 1
determinar o primeiro primo solitário em uma grade numérica com largura w
, onde o referido primo solitário deve ser maior ou igual a i
. As entradas podem ser obtidas em qualquer formato razoável (incluindo tomá-las como cadeias). É garantido que haverá um pico solitário de largura w
.
A grade não se enrola.
Exemplos:
w i output
11 5 11
12 104 107
12 157 157
9 1 151
12 12 37
Como se trata de código-golfe , o código mais curto vence!
w=12
não é37
um primo solitário? Nenhum dos números que o rodeia -{25, 26, 38, 49, 50}
- são primos.