Создание игры Boggle - связывание координат с буквами
Существует доска 4х4 с 16 буквами. В этом массиве [2,1] представляет букву в третьей строке второго столбца.
const coordPairs = [
[ [2, 1], [4, 1] ]
[ [4, 0], [4, 1], [4, 2], [4, 3] ]
[ [0, 0], [0, 1], [0, 2] ],
[ [1, 0], [3, 0], [4, 0] ]
]
Попытка выяснить, как я могу связать пару типа [2,1] с одной буквой на игровом поле, которая представлена массивом из 16 строк (букв).
Конечная цель состоит в том, чтобы функция генерировала строки для слов на основе игрового поля и координат, которые вы указали.
JSFiddle с комментариями: https://jsfiddle.net/8euxzgy2/4/
1 ответ
Решение
Предполагая, что это нулевая индексированная квадратная матрица. Вы можете взять количество rows * coord[0] + coord[1]
:
let str = "abcdefghijklonop"
let rows = 4
const coordPairs = [[0, 0], [2, 1], [3, 1] ];
/* a b c d
* e f g h
* i j k l
* m n o p */
letters = coordPairs.map(coord => str[coord[0]* rows + coord[1]])
console.log(letters)