У меня есть 2D (nxm) массив, и даны записи 1-й строки и 1-го столбца.
Первоначально элементы в матрице являются «X» за исключением первой строки и столбца.
Наконец, элементы в массиве - это либо «L», либо «W».
Элемент (0,0) не имеет значения. Я взял его за «-» в приведенном ниже примере.
For Example: l=[- W L W]
[L X X X]
[W X X X] .
Здесь n = 3 и m = 4, теперь я начинаю итерацию с l [1] [1].
Я должен проверить только те ячейки, которые находятся сверху и слева, если он, т.е.
(0,1) и (1,0) в случае (1,1).
Если один из них (либо левая, либо верхняя) содержит «L», то l [1] [1] будет заполнено буквой «W», иначе «L». В случае l [1] [1] он будет заполнен буквой «W», поскольку оставленная ячейка, т. Е. (1,0) содержит букву «L».
Теперь весь процесс должен быть повторен, и я должен заполнить всю матрицу либо "L", либо "W" в соответствии с приведенным выше условием.
Я пытался использовать грубую силу (перебирая все элементы, а затем проверяя левую и верхнюю ячейки). Я ищу более эффективное решение.
Окончательная матрица из приведенного выше примера будет выглядеть следующим образом после заполнения всех элементов в соответствии с заданным условием:
l=[- W L W]
[L W W L]
[W L W W]
Кроме того, я пытаюсь реализовать это в Python.