Есть матрица шириной 4 ячейки.
Высота неограничена.
Нужно так заполнять матрицу, чтобы она всегда была заполнена полностью и перемешана.
Элементы могут быть 1х1, 1х2, 2х1, 2х2
Сергей Соколов, оч нежелателен
повтор ок.
в идеале нужно, чтобы одиночных и 2x1/1x2 было примерно поровну, 2x2 поменьше или можно вообще без, если элементов мало
Random.Next(4) для получения фигурки
Поиск/обход матрицы в глубину/ширину по форме фигурки - т.е. будет 4 реализации, как вхреначить фигурку в матрицу
Проверки на крайние значения, чтобы если осталась одна линия - то фигурки выбираются из первых трех, если 3,2,1 ячейки остались последними.
Начинать с позиции 0,0 и дальше вправо двигаться (алгоритм обхода должен иметь правила куда и как прижиматься, например вправо+вверх.)
Игорь Лебедев, смотри: есть такая задача. В ней нет твоего дурацкого "перемешано", просто найти все заполнения.
У тебя никак не раскрыт критерий "перемешано", и, если ты до сих пор этого не понял - наверное, я дурак, так как беседую с дураком )
Берёте случайную фигуру и пытаетесь её поставить так, чтобы она заняла клетки в самом верхнем ряду-с-дырками. Если это невозможно, случайно выбираете ещё раз из фигур шириной 1 (1x1, 1x2).