Помогите, плизз, решить задачку

За вознаграждение или нахаляву (если повезёт)

Модераторы: Хыиуду, MOTOCoder, Medved, dr.Jekill

Ответить
AnaVare
Сообщения: 3
Зарегистрирован: 15 мар 2008, 06:26

Помогите, плизз, решить задачку на языке паскаль
Даны обозначения двух полей шахматной доски (например, a5 и c2). Найти минимальное число ходов, которые нужны шахматному коню для перехода с первого поля на второе.
Хыиуду
Сообщения: 2442
Зарегистрирован: 06 мар 2005, 21:03
Откуда: Москва
Контактная информация:

Думаю, тут два варианта: построить какой-то математический алгоритм нахождения оптимального пути, или сделать рекурсивную программу наподобие нахождения кратчайшего пути в графе. Второе рассматривалось тут сто лет назад.
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
AnaVare
Сообщения: 3
Зарегистрирован: 15 мар 2008, 06:26

А как именно выглядит этот математический алгоритм, может он шагает всеми способами ходом коня при этом считая кол-во шагов и сохраняя ходы, потом приходит к самому минимальному кол-ву, и выводит сохраненные ходы? Но мне кажется, что эта программа слишком сложная, нужно придумать какой то другой алгоритм.
Хыиуду
Сообщения: 2442
Зарегистрирован: 06 мар 2005, 21:03
Откуда: Москва
Контактная информация:

Тогда - нахождение минимального пути в графе. Оно несложное, поэтому тупое. По-моему, называется алгоритмом Дейкстры, Гугль тебе поможет
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Ответить