На двух концентрических окружностях расположено
и
точек соответственно.
Для простоты вначале пусть они расположены в вершинах правильных
и
-угольников.
Мне надо так повернуть окружности относительно друг друга, чтобы оба множества были
максимально далеки по углам друг от друга. Ну как бы в "шахматном порядке".
Если
то идея очевидна -- располагаем точки одной окружности посередине (в смысле углов)
между точками другой.
Если
, то в любом случае сначала находим все попарные угловые расстояния
(с учетом
).
И выбираем такой угол поворота, чтобы максимизировать минимальное расстояние.
У нас всего один параметр -- угол поворота, и мне кажется, для правильных многоугольников можно
найти точное решение (возможно, состоящие из нескольких ветвей, с модулями и т.п.)
Но что то я запутался ((
Ну и хотелось бы найти эффективный алгоритм, если точки заданы массивами углов.