Data una matrice intera a
e un intero non negativo i
, genera una mappatura b
che associ i valori distinti nella i
colonna th a
alle righe di a
chi ha quel valore nella i
colonna th.
Si può presumere che i
si trovi nell'intervallo semi-aperto [0, num_cols(a))
(o [1, num_cols(a)]
se si sceglie di utilizzare indici basati su 1) e che tutti gli interi sono compresi nell'intervallo rappresentabile della propria lingua. L'input e l'output possono essere eseguiti in modo ragionevole, purché soddisfino i requisiti di base della sfida (array 2D -> mappatura da ints a array 2D di ints). Finché la mappatura è chiara e coerente, le chiavi non devono essere incluse nell'output.
Esempi
[[1]], 0 -> {1: [[1]]}
[[3, 4, 5], [1, 4, 2], [5, 5, 5], [7, 7, 7], [1, 5, 9]], 1 -> {4: [[3, 4, 5], [1, 4, 2]], 5: [[5, 5, 5], [1, 5, 9]], 7: [[7, 7, 7]]}
[[1, 2, 3, 4, 5], [5, 4, 3, 2, 1], [2, 3, 4, 5, 6], [8, 9, 100, 0, 2]], 4 -> {5: [[1, 2, 3, 4, 5]], 1: [[5, 4, 3, 2, 1]], 6: [[2, 3, 4, 5, 6]], 2: [[8, 9, 100, 0, 2]]}
Questo è code-golf , quindi vince la risposta più breve in byte.