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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 28.01.2016, 22:58   #11
FPaul
Форумчанин
 
Регистрация: 25.01.2015
Сообщений: 474
По умолчанию

Код:
program test;

const
  N = 3;
  M = 5;
type
  TMatrix = array[1..N, 1..M] of integer;

  function Min(a, b: integer): integer;
  begin
    if a < b then
      Min := a
    else
      Min := b;
  end;

var
  Map:  TMatrix = ((0, 0, 0, 0, 0), (2, 6, 1, 1, 10), (3, 4, 1, 1, 0));
var
  k, i: integer;
begin
  for k := 1 to N do
  begin
    for i := 1 to M do
      Write(Map[k, i]: 3);
    writeln;
  end;
  {1-й проход отдельно, т.к. нет левой и верхней границы}
  for i := 2 to M do
    Map[1, i] := Map[1, i] + Map[1, i - 1];
  for i := 2 to N do
    Map[i, 1] := Map[i, 1] + Map[i - 1, 1];
  {2-й и последующие проходы}
  for k := 2 to Min(M, N) do
  begin
    for i := k to M do
      Map[k, i] := Min(Map[k - 1, i], Map[k, i - 1]) + Map[k, i];
    for i := k + 1 to N do
      Map[i, k] := Min(Map[i, k - 1], Map[i - 1, k]) + Map[i, k];
  end;
  {результат}
  writeln(Map[N, M]);
  for k := 1 to N do
  begin
    for i := 1 to M do
      Write(Map[k, i]: 3);
    writeln;
  end;
end.
FPaul вне форума Ответить с цитированием
Старый 28.01.2016, 23:28   #12
Croessmah
Вредный кошак
Участник клуба
 
Аватар для Croessmah
 
Регистрация: 14.10.2012
Сообщений: 1,159
По умолчанию

FPaul, а, Вы просто как-то по-своему описали алгоритм )))
Croessmah вне форума Ответить с цитированием
Старый 31.01.2016, 11:22   #13
8Observer8
Старожил
 
Регистрация: 02.01.2011
Сообщений: 3,328
По умолчанию

Я не уверен, но может здесь можно приспособить A*?

Цитата:
Поиск A* (произносится «А звезда» или «А стар», от англ. A star) — в информатике и математике, алгоритм поиска по первому наилучшему совпадению на графе, который находит маршрут с наименьшей стоимостью от одной вершины (начальной) к другой (целевой, конечной).
8Observer8 вне форума Ответить с цитированием
Старый 31.01.2016, 11:43   #14
Croessmah
Вредный кошак
Участник клуба
 
Аватар для Croessmah
 
Регистрация: 14.10.2012
Сообщений: 1,159
По умолчанию

8Observer8, конечно можно.
Croessmah вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Самый дешевый путь. Графы. jocry Помощь студентам 1 14.03.2009 12:56