Size: a a a

var chat = new Chat();

2021 September 22

AK

Alex Kiev in var chat = new Chat();
я не уверен что так всегда будет решение
источник

VD

Vitaly Deev in var chat = new Chat();
Скажем, мы видим, что у нас какой-то ферзь пересекается. Нужно решить кого стоит передвинуть. Вероятно, нужно передвинуть тот,  у которого пересечений с другими больше.  Решаем двигать определенную фигуру.  Определяется список клеток на которые мы можем передвинуть.  После этого для каждой клетки ищем вес вот тут мб поиск кратчайшего и пригодится,  сколько ходов потребуется ферзю, чтобы передвинуться на  эту клетку и выбираем ближайшую.
источник

AK

Alex Kiev in var chat = new Chat();
может быть случай когда мы не можем передвинуть этого ферзя )
источник

AK

Alex Kiev in var chat = new Chat();
или может быть случай когда нам ефективней сначала подвинуть другого
источник

VD

Vitaly Deev in var chat = new Chat();
Для случаев, когда нет достижимых точек, можно переходить к другой фигуре.  Но да, вполне вероятно алгоритм жадноватый будет
источник

AK

Alex Kiev in var chat = new Chat();
ну так это нормально )
источник

VD

Vitaly Deev in var chat = new Chat();
Но как мне кажется, тут не тот случай, когда на то, чтобы найти хотя бы один вариант, нужно более получаса
источник

VB

Vladislav Bardin in var chat = new Chat();
если его нет, то двигаем дальше ферзя в безопасную позицию и дальше смотрим что будет
источник

AK

Alex Kiev in var chat = new Chat();
безопасной позиции может не быть )
источник

AK

Alex Kiev in var chat = new Chat();
вот например
источник

AK

Alex Kiev in var chat = new Chat();
движение любого из ферзей создаёт новые пересечения
источник

MN

Mr. N in var chat = new Chat();
Треба перед розрахувати тоді передвигати, він сам писав що має бути два алгоритма
источник

VD

Vitaly Deev in var chat = new Chat();
Ну да, кстати, в таком случае чтобы наверняка было решение -  стоит смотреть только те фигуры, которые уже передвигались и передвигаться не будут. Или откатываться назад до предыдущих состояний и искать другие варианты
источник

VD

Vitaly Deev in var chat = new Chat();
Но это уже как-то слишком
источник

AK

Alex Kiev in var chat = new Chat();
первый я не помню 2й точно переборный...
источник

VD

Vitaly Deev in var chat = new Chat();
И далековато как мне кажется от темы "использовать A*" отходит
источник

AK

Alex Kiev in var chat = new Chat();
так это и есть A*
источник

AK

Alex Kiev in var chat = new Chat();
(ну в очень вольной трактовке)
источник

VD

Vitaly Deev in var chat = new Chat();
Я о том, что помимо этого алгоритма - оч много условий и логики
источник

Ɖ

Ɖrēw in var chat = new Chat();
Хорошо что я пропустил обсуждение душной алгоритмической задачи
источник