Есть задача: дана матрица размером N*N квадратов, каждый из которых раскрашен в произвольном порядке одним из следующих цветов: красным, синим, зеленым, желтым. Необходимо за минимальное кол-во тактов переставить квадраты в матрице т. о., чтобы квадрат каждого цвета хотя бы одной гранью соприкасался с квадратом того же цвета, а в углах матрицы находились, начиная с левого верхнего, квадраты перечисленных цветов.Может кто знает, как это сделать? какой получается алгоритм?
|