Вопрос № 29934: Здравствуйте! Недавно была олимпиада и в ней попалась такая задача:
Задана матрица размером m * n из целых чисел. Путь начинается в любой строке первого столбца и состоит из последовательности шагов, обрывающихся в столбце n . Каждый шаг сос...
Вопрос № 29.934
Здравствуйте! Недавно была олимпиада и в ней попалась такая задача:
Задана матрица размером m * n из целых чисел. Путь начинается в любой строке первого столбца и состоит из последовательности шагов, обрывающихся в столбце n . Каждый шаг состоит в переходе из столбца i в столбец i +1 в соседнюю (по горизонтали или диагонали) ячейку. Весом пути называется сумма целых чисел, записанных в каждой из n посещенных ячеек.
Требуется написать программу, которая вычисляет путь с минимальным весом с левого края матрицы до правого.
Технические требования:
Входной файл: INPUT . TXT,
Выходной файл: OUTPUT . TXT,
Ограничение по времени тестирования: по 1 секунде на один тест.
Отвечает: Romodos
Здравствуйте, Томша Павел!
Это же типичный пример использования алгоритма Дейкстры. У вас есть граф с n*m вершинами. Даны расстояния до вершин. Просто прогоните его десять раз и получите кратчайший путь. Алгоритм Дейкстры есть везде (algolist.manual.ru)
просто наберите в поиске
--------- FAQ me off!
Ответ отправил: Romodos (статус: Студент)
Отправлен: 21.11.2005, 15:40 Оценка за ответ: 4
Отвечает: REFERI
Здравствуйте, Томша Павел!
Советую поискать в интеренте на яндексе и т.д. - наверняка найдете!
Например здесь algolist.manual.ru
Или на других порталах где есть статьи по АЛГОРИТМАМ
А вообще к-либо сложные задачи лучше решать самому, ведь каое!!! удовольствие потом получаешь (если решишь конечно) :)
Удачи!
--------- Не судите, да не судимы будете...
Ответ отправил: REFERI (статус: 5-ый класс)
Отправлен: 22.11.2005, 02:02