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

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

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

Восстановить пароль

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 24.12.2020, 07:56   #1
Дарья0108
 
Регистрация: 07.10.2020
Сообщений: 9
По умолчанию необходимо написать программу

Дано прямоугольное поле размером n*m клеток. Можно совершать шаги длиной в одну клетку вправо, вниз или по диагонали вправо-вниз. В каждой клетке записано некоторое натуральное число. Необходимо попасть из верхней левой клетки в правую нижнюю. Вес маршрута вычисляется как сумма чисел со всех посещенных клеток. Необходимо найти маршрут с минимальным весом.
Дарья0108 вне форума
Старый 24.12.2020, 17:04   #2
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,716
По умолчанию

Похоже на динамическое программирование, алгоритм Беллмана. Это во ФРИЛАНСЕ стоит больших денег, думаю. Или просто тупо полным перебором...
digitalis вне форума
Старый 24.12.2020, 18:01   #3
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,865
По умолчанию

Задачка не тривиальная, хотя во Фрилансе решить не проблема.
Arigato вне форума
Старый 24.12.2020, 21:47   #4
ViktorR
Старожил
 
Регистрация: 23.10.2010
Сообщений: 2,378
По умолчанию

Задача не простая, но и не столь уж сложная.
На этом форуме предлагал решение подобной задачи с поиском пути, когда собирается максимальное число зёрен (в каком то индийском храме ???).
Но алгоритм пройдёт и для поиска минимального решения.

Надо начать путь с конечной точки. В соответствии с условием задачи, в эту точку попасть можно только с трёх соседних клеток.
Находим сумму значения в текущей клетке и значения в соседних.
Вписываем минимальную сумму.
Двигаемся по горизонтали. каждая клетка граничит с тремя клетками (учитываем движение по диагонали).
Заполняем клетки минимальной суммой. Далее поднимаемся в следующий ряд и т.д.
После заполнения всех клеток получим ту сумму, которая будет возможной минимальной.
Далее очевиден путь или даже пути, по которым следует двигаться.

PS: Это тут: https://programmersforum.ru/showthre...335585&page=10
Код на Python. Там есть ссылка на книжку. В книге есть код на Паскаль, но он неверный.
Думаю, что ТС следует подумать, может ли справиться с задачей или во фриланс.
Собственно какова цель задания?
Как-то так, ...

Последний раз редактировалось ViktorR; 24.12.2020 в 22:07.
ViktorR вне форума
Старый 24.12.2020, 22:52   #5
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,716
По умолчанию

Цитата:
Сообщение от ViktorR Посмотреть сообщение
Собственно какова цель задания?
Получить зачёт, вестимо
digitalis вне форума
Закрытая тема


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Необходимо написать программу tessera Фриланс 6 10.11.2011 23:11
Необходимо написать программу Pavel_work_cool Фриланс 15 27.06.2011 20:01
Необходимо написать программу hiphone Фриланс 3 17.06.2011 06:16
Необходимо написать программу за $$$ kkkron Фриланс 3 15.03.2009 13:22