Предположим, что я выбрал все слова 3 char из словаря Mathematica:
all3 = Characters /@ Select[DictionaryLookup[], StringLength[#] == 3 &];
и я хочу создать полные скребущие наборы, например:
A B E
R A Y
E R E
Где слова могут быть прочитаны горизонтально и вертикально.
Ясно, что множества можно найти с рекурсией и возвратом. Но:
1) Есть ли способ решить это с помощью шаблонов?
2) Для каких размеров существуют правильные решения?
Изменить
Я написал вопрос для DictionaryLookup[]
только потому, что это база данных разумного размера записей переменной длины. Моя реальная проблема не связана с поиском словаря, а с определенными типами строчек.