Создание игры 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)

Другие вопросы по тегам