... o quartieri di Toroidal Moore
Interi positivi trovati h
, w
e un intero non negativo i
, restituiscono tutti gli indici circostanti i
.
Devi assumere una matrice composta da h
file di w
elementi, numerati dal più basso, nell'angolo in alto a sinistra, al più alto, nell'angolo in basso a destra, e restituire, in qualsiasi formato ragionevole, un elenco degli indici che circondare l'indice, i
. Questa matrice è un toro (una mappa infinita che avvolge ogni bordo).
Ad esempio, input h=4
e w=4
, comporterebbero la matrice:
0 1 2 3
4 5 6 7
8 9 10 11
12 13 14 15
ma più specificamente:
15 12 13 14 15 12
3 0 1 2 3 0
7 4 5 6 7 4
11 8 9 10 11 8
15 12 13 14 15 12
3 0 1 2 3 0
quindi, se lo i
fosse 0
, dovresti tornare 15, 12, 13, 3, 1, 7, 4, 5
(basato su 0).
Esempi
0-based:
h w i Expected result
4 4 5 0, 1, 2, 4, 6, 8, 9, 10
4 4 0 15, 12, 13, 3, 1, 7, 4, 5
4 5 1 15, 16, 17, 0, 2, 5, 6, 7
1 3 2 1, 2, 0, 1, 0, 1, 2, 0
1 1 0 0, 0, 0, 0, 0, 0, 0, 0
1-based:
h w i Expected result
4 4 6 1, 2, 3, 5, 7, 9, 10, 11
4 4 1 16, 13, 14, 4, 2, 8, 5, 6
4 5 2 16, 17, 18, 1, 3, 6, 7, 8
1 3 3 2, 3, 1, 2, 1, 2, 3, 1
1 1 1 1, 1, 1, 1, 1, 1, 1, 1
Regole
- La tua risposta può essere 0 o 1 indicizzata, a tua scelta, specifica.
- Puoi presumere che
i < h * w
(oi <= h * w
per risposte con 1 indice). - Puoi presumere che
i >= 0
(oi > 0
per risposte con 1 indice). - L'ordine dei valori restituiti non è importante finché sono inclusi solo gli otto valori desiderati.
- Sono vietate le scappatoie standard .
- Questo è code-golf, quindi la risposta più breve, in ogni lingua, vince!
Grazie a @Conor O'Brien per il titolo dal suono più tecnico e @ngm per altri casi di test!