![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
Vovik777 |
![]() ![]()
Сообщение
#1
|
Гость ![]() |
Помогите пожалуйста решить такую задачу:
Дана квадратная матрица NxN. A11 A12 … A1n A21 A22 … A2n ………… An1 An2 … Ann Нужно найти кратчайший путь из A11 в Ann при условии, что переходить можно только на элемент, который больше или равен настоящему. Двигаться можно во всех направлениях (в т.ч. и по диагонали). Никак не могу придумать сам алгоритм поиска пути. Хотя бы в какую сторону копать? Буду очень признателен… |
SHnur |
![]()
Сообщение
#2
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 81 Пол: Мужской Реальное имя: Шурик Репутация: ![]() ![]() ![]() |
Vovik777 , проверяй все соседние еллементы ночиная с правого нижнего , в обе стороны . И если подходит по условию , то переходи туда .
Цитата * - текущий эллемент # - соседние эллементы < - проверяемый .. ! - проверенный , не подошедший по условию. ### #*# ### ### #*# ##< ### #*< #<! и т.д ... Думаю так всё получится . -------------------- Двадцать пятый час в сутках может появиться всего лишь из-за небольшой ошибки в программе.
Чтобы не воспользоваться сумасшедшими возможностями, нужно быть идиотом. |
volvo |
![]()
Сообщение
#3
|
Гость ![]() |
SHnur
А почему с правого нижнего а не с левого верхнего? Чем обусловлен именно такой выбор? ;) |
SHnur |
![]()
Сообщение
#4
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 81 Пол: Мужской Реальное имя: Шурик Репутация: ![]() ![]() ![]() |
volvo , Ну имеется ввиду начиная с самого приближённого к Ann положения .
А можно я , думаю методом волновой трассировки воспользоваться . Подробнее тут : http://www.codemanual.net/main/algo/alg20.htm Vovik777 , вообше-то надо поиском по форуму пользоваться , там много чего есть . Сообщение отредактировано: SHnur - 14.01.2005 19:14 -------------------- Двадцать пятый час в сутках может появиться всего лишь из-за небольшой ошибки в программе.
Чтобы не воспользоваться сумасшедшими возможностями, нужно быть идиотом. |
volvo |
![]()
Сообщение
#5
|
Гость ![]() |
SHnur
А оценить быстродействие своего метода сможешь? Просто я сегодня к похожей задаче подошел через графы (алгоритм Дейкстры)... Работает очень быстро. (Буквально за 1 проход по матрице). |
SHnur |
![]()
Сообщение
#6
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 81 Пол: Мужской Реальное имя: Шурик Репутация: ![]() ![]() ![]() |
Думаю , что работать будет очень долго , но работать должно . ;)
-------------------- Двадцать пятый час в сутках может появиться всего лишь из-за небольшой ошибки в программе.
Чтобы не воспользоваться сумасшедшими возможностями, нужно быть идиотом. |
![]() ![]() |
![]() |
Текстовая версия | 18.07.2025 14:02 |