Les nombres premiers solitaires (comme je les appelle) sont des nombres premiers, étant donné une grille numérique de largeur w ≥ 3
, sont des nombres premiers qui n'ont pas d'autres nombres premiers adjacents orthogonalement ou en diagonale.
Par exemple, si nous prenons cette grille où w = 12
(nombres premiers surlignés en gras):
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
Vous pouvez voir que seuls les deux nombres premiers 103 et 107 n'ont aucun nombre adjonctif orthogonalement ou diagonalement. J'ai sauté une section car il n'y a pas de nombres premiers solitaires. (sauf 37, en fait)
Votre tâche consiste à, étant donné deux entrées w ≥ 3
et i ≥ 1
, déterminer le premier nombre premier solitaire dans une grille numérique avec largeur w
, où ledit nombre premier solitaire doit être supérieur ou égal à i
. Les entrées peuvent être prises dans n'importe quel format raisonnable (y compris en les prenant comme des chaînes). Il est garanti qu'il y aura un amorçage solitaire pour la largeurw
.
La grille ne s'enroule pas.
Exemples:
w i output
11 5 11
12 104 107
12 157 157
9 1 151
12 12 37
Comme il s'agit de code-golf , le code le plus court gagne!
w=12
pas pour37
un premier solitaire? Aucun des nombres qui l'entourent -{25, 26, 38, 49, 50}
- n'est premier.