На мой взгляд, ориентация на сильноокрашенный прямоугольник (применённая в последних трёх примерах Pavlovsky) сужает матричный метод.
Я исхожу из постулата, что все алгоритмы "алгебраического" типа эквивалентны.
-- Пн окт 01, 2012 09:46:24 --Кстати, alexBlack в своей статье не ориентировался на сильноокрашенные прямоугольники; он применял матричный метод в общем виде: вот есть 6 блоков 6х6, вот есть базовая матрица 5х5; заполняем базовую матрицу блоками и получаем решение; при этом интересный момент: для одного и того же исходного ЛК он находит 10 (!) различных базовых матриц. Почему 10 Эти все решения разные что ли будут? Или они будут изоморфные?]
Три исходных неизоморфных ЛК и все базовые матрицы 5х5
Код:
0,1,2,3,4,5,1,0,3,2,5,4,2,3,5,4,1,0,3,2,4,5,0,1,4,5,1,0,2,3,5,4,0,1,3,2
2,3,4,5,3,2,5,4,4,5,2,6,5,4,6,2
2,3,4,5,3,2,5,6,5,4,6,3,6,5,3,2
2,3,4,6,3,6,2,4,4,2,6,5,6,4,5,3
2,3,4,6,4,2,6,3,5,6,3,4,6,4,5,2
2,3,5,6,3,2,4,5,4,5,6,3,5,6,3,2
2,3,5,6,3,6,4,5,5,4,3,2,6,5,2,3
2,4,5,6,3,2,6,4,4,6,3,5,6,3,4,2
2,4,5,6,4,2,3,5,5,3,2,4,6,5,4,2
0,1,2,3,4,5,1,5,0,4,3,2,2,4,5,0,1,3,3,0,4,5,2,1,4,3,1,2,5,0,5,2,3,1,0,4
2,3,4,5,3,2,6,4,4,6,2,3,6,4,3,2
2,3,4,6,3,2,5,4,4,6,2,3,6,4,3,2
2,3,4,6,3,2,6,4,4,5,2,3,6,4,3,2
2,3,4,6,3,2,6,4,4,6,2,3,5,4,3,2
2,3,4,6,3,2,6,4,4,6,2,3,6,4,3,2
0,1,2,3,4,5,1,5,3,0,2,4,2,4,5,1,3,0,3,2,4,5,0,1,4,0,1,2,5,3,5,3,0,4,1,2
2,3,4,5,3,2,5,4,4,5,2,3,5,4,3,2
2,4,5,6,4,2,6,5,5,6,2,4,6,5,4,2
-- Пн окт 01, 2012 10:10:08 --А что если существует решение C6N36, которому не соответствует никакой 6-сильный прямоугольник? Такое невозможно разве?
Для сокращения перебора рассматривается некий класс решений. Естественно, наверняка существуют решения C6N36 без 6-сильноокрашенных прямоугольников. Более того решения с сильноокрашенными прямоугольниками имеют естественную верхнюю границу. Квадраты не могут иметь сторону больше C^2. А ведь наверняка существуют решения C6N37, может и больше.
-- Пн окт 01, 2012 10:21:29 --Вот эти 6 блоков:
(Оффтоп)
Код:
№ 1
4 2 5 3 6 1
6 5 3 1 4 2
5 6 1 4 2 3
3 1 6 2 5 4
1 4 2 6 3 5
2 3 4 5 1 6
№ 2
5 3 6 4 1 2
1 6 4 2 5 3
6 1 2 5 3 4
4 2 1 3 6 5
2 5 3 1 4 6
3 4 5 6 2 1
№ 3
6 4 1 5 2 3
2 1 5 3 6 4
1 2 3 6 4 5
5 3 2 4 1 6
3 6 4 2 5 1
4 5 6 1 3 2
№ 4
1 5 2 6 3 4
3 2 6 4 1 5
2 3 4 1 5 6
6 4 3 5 2 1
4 1 5 3 6 2
5 6 1 2 4 3
№ 5
2 6 3 1 4 5
4 3 1 5 2 6
3 4 5 2 6 1
1 5 4 6 3 2
5 2 6 4 1 3
6 1 2 3 5 4
№ 6
3 1 4 2 5 6
5 4 2 6 3 1
4 5 6 3 1 2
2 6 5 1 4 3
6 3 1 5 2 4
1 2 3 4 6 5
Составте ЛК из первых колонок ваших блоков:
Код:
4,5,6,1,2,3,
6,1,2,3,4,5,
5,6,1,2,3,4,
3,4,5,6,1,2,
1,2,3,4,5,6,
2,3,4,5,6,1
Этот ЛК будет изоморфным ЛК:
0,1,2,3,4,5,1,0,3,2,5,4,2,3,5,4,1,0,3,2,4,5,0,1,4,5,1,0,2,3,5,4,0,1,3,2