Я ищу алгоритм, способный построить массив (2D) букв, из которого я мог бы извлечь каждое слово из заданного списка. Как и в Scrabble, слова могут пересекаться друг с другом, быть горизонтальными, вертикальными или диагональными. Конечно, есть некоторые очевидные решения, но цель здесь состоит в том, чтобы сделать его как можно меньше, что также означает максимальное количество пересечений.
Я думал о методе машинного обучения, использующем большой набор сеток перетаскивания, созданных людьми или компьютерами, но я уверен, что есть более чистый способ сделать это.
Спасибо за вашу помощь.
PS: это для арт-проекта, без шуток.