Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.05.2012, 12:58   #1
wwwroman5
Новичок
Джуниор
 
Регистрация: 15.05.2012
Сообщений: 1
По умолчанию Задача "Кубик в лабиринте"

Здравствуйте! Помогите решить задачу:
На прямоугольном поле из X на Y квадратных клеток находится кубик со стороной, равной длине стороны клетки. За один ход куб может перекатываться через ребро, перемещаясь на соседнюю по вертикали или по горизонтали клетку. Между некоторыми клетками могут стоять стенки, которые являются препятствиями. Куб не может перекатываться через препятствия. куб не может также покидать пределы поля.
Требуется определить минимальное число ходов, необходи-мых для того, чтобы переместить куб из заданной начальной клетки с координатами А и В в заданную конечную клетку с координатами C и D. При этом в конечном положении верхняя грань должна быть та же, что и в начальном положении.

Если, как определить минимальное число ходов, для перемещения кубика примерно ясно, то как узнать на какой грани лежит куб? И как построить такой путь, чтобы он лежал на той же грани, с которой начал. Может есть у кого-нибудь какие-нибудь мысли?
Спасибо!
wwwroman5 вне форума Ответить с цитированием
Старый 15.05.2012, 18:47   #2
s-andriano
Старожил
 
Аватар для s-andriano
 
Регистрация: 08.04.2012
Сообщений: 3,229
По умолчанию

Я так думаю, нужно немного модифицировать волновой алгоритм, добавив к нему карту "верхних граней".
Т.к. по условию предполагается, что в одну и ту же клетку можно прийти с разными верхними гранями, в клетке нужно завести массив из 6 элементов.
s-andriano вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вывести название соответствующей карты вида "шестерка бубен", "дама червей","туз треф" и т.п. воваава Помощь студентам 3 01.12.2011 12:50
при вводе на листе "магазин"- код товара появлялось "описание" товара из "склада" с "продажной ценой" aleksei78 Microsoft Office Excel 13 25.08.2009 12:04
"Транспортная задача", "Поиск решения" Perroman Microsoft Office Excel 3 12.12.2007 17:12