Поиск:

Ответ в темуСоздание новой темы Создание опроса
> комментарии к алгоритмам 
V
    Опции темы
Scaut
Дата 7.1.2008, 14:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 3.12.2007

Репутация: нет
Всего: нет



Ребят! скачал Сборник исходников "Алгоритмы на графах" 1.1 там алгоритм максимального потока, но почему то все комменты - иероглифы(( 
const
  maxn = 100;                            { ¬ Єб. Є®«-ў® ўҐаиЁ­ }
  oo   = maxint;                         { ЎҐбЄ®­Ґз­®бвм }

типа вот этого(( может кто знает чем помочь или у кого нормальный вариант есть....

PM MAIL   Вверх
JackYF
Дата 7.1.2008, 14:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: нет
Всего: 162



Цитата(Scaut @  7.1.2008,  13:01 Найти цитируемый пост)
типа вот этого(( может кто знает чем помочь или у кого нормальный вариант есть....

поменяй кодировку в браузере.


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
chip_and_dayl
Дата 7.1.2008, 15:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 603
Регистрация: 22.4.2007
Где: Украина, Киев

Репутация: нет
Всего: 9



JackYF
Цитата

поменяй кодировку в браузере.

Для начала нужно узнать в чем исходники;)
Поэтому ответ будем таким "поменяй кодировку в чем-то"


--------------------
Фсё будет хорошо!!!
PM MAIL Skype   Вверх
JackYF
Дата 7.1.2008, 15:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: нет
Всего: 162



Цитата(chip_and_dayl @  7.1.2008,  14:14 Найти цитируемый пост)
Для начала нужно узнать в чем исходники;)

а браузеру пофиг, он текстовые файлы тоже читать может smile


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
chip_and_dayl
Дата 7.1.2008, 15:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 603
Регистрация: 22.4.2007
Где: Украина, Киев

Репутация: нет
Всего: 9



Цитата(JackYF @ 7.1.2008,  15:15)
Цитата(chip_and_dayl @  7.1.2008,  14:14 Найти цитируемый пост)
Для начала нужно узнать в чем исходники;)

а браузеру пофиг, он текстовые файлы тоже читать может smile

Интересно, много людей открывают скачанный исходник (в нашем случае текстовой файл) в браузере!?!  smile 

Ладно... хватить уже мне оффтопить в этой теме. Пошел в другую smile 


--------------------
Фсё будет хорошо!!!
PM MAIL Skype   Вверх
JackYF
Дата 7.1.2008, 15:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: нет
Всего: 162



Цитата(chip_and_dayl @  7.1.2008,  14:34 Найти цитируемый пост)
в браузере!?!

просто так - нет. А если нужно посмотреть кракозябры в комментариях, то все способы хороши.


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
Scaut
Дата 8.1.2008, 17:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 3.12.2007

Репутация: нет
Всего: нет



блин парни дельных советьов нет что ли?? какой нах браузер.... код с разшерением .pas
Код
{ Ї®ЁбЄ ¬ ЄбЁ¬ «м­®Ј® Ї®в®Є  ў бҐвЁ by boris }
{ ¬Ґв®¤ ”®а¤ -” «ЄҐаб®­  }
{  «Ј®аЁв¬ ќ¤¬®­¤б -Љ аЇ  }

{- Љ®­бв ­вл Ё ЇҐаҐ¬Ґ­­лҐ -}

const
  maxn = 100;                            { ¬ Єб. Є®«-ў® ўҐаиЁ­ }
  oo   = maxint;                         { ЎҐбЄ®­Ґз­®бвм }

var
  { Ї®в®Є }
  f: array [1..maxn, 1..maxn] of integer;  { f[i, j] = -f[j, i] }
  { Їа®ЇгбЄ­лҐ бЇ®б®Ў­®бвЁ }
  c: array [1..maxn, 1..maxn] of integer;
  { Є®«ЁзҐбвў® ўҐиаЁ­}
  n: integer;

{- Џ®ЁбЄ ў иЁаЁ­г -}

{ ЋзҐаҐ¤м }

const
  queue_size = maxn + 2;                { а §¬Ґа ®зҐаҐ¤Ё }

type
  queue = record                        { ®зҐаҐ¤м }
    a: array [0..queue_size-1] of integer;
    head, tail: integer;
  end;

{ init_queue: Ё­ЁжЁ «Ё§Ёа®ў вм ®зҐаҐ¤м }
procedure init_queue(var q: queue);
begin
  with q do
  begin
    tail := 0;
    head := 0;
  end;
end;

{ is_queue_empty: Їгбв  «Ё ®зҐаҐ¤м }
function is_queue_empty(const q: queue): boolean;
begin
  is_queue_empty := q.tail = q.head;
end;

{ push_to_queue: Ї®«®¦Ёвм ў ®зҐаҐ¤м x}
procedure push_to_queue(var q: queue; x: integer);
begin
  with q do
  begin
    a[tail] := x;
    tail := (tail + 1) mod queue_size;
  end;
end;

{ pop_from_queue: ¤®бв вм Ё§ ®зҐаҐ¤Ё }
function pop_from_queue(var q: queue): integer;
begin
  with q do
  begin
    pop_from_queue := a[head];
    head := (head + 1) mod queue_size;
  end;
end;

{ ЏҐаҐ¬Ґ­­лҐ }

var
  { ­®¬Ґа ЇаҐ¤л¤г饩 ўҐаиЁ­л}
  p: array [1..maxn] of integer;
  { Ї®бҐйҐ­­®бвм }
  v: array [1..maxn] of boolean;
  { ®зҐаҐ¤м }
  q: queue;

{ bfs: Ї®ЁбЄ ў иЁаЁ­г ¤«п ¬Ґв®¤  ”®а¤ -” «ЄҐаб®­  }
{ ў®§ўа й Ґв true, Ґб«Ё бгйҐбвўгҐв Їгвм ®в s ¤® t }
function bfs(s, t: integer): boolean;
var
  i, j: integer;
begin
  fillchar(v, sizeof(v), false);        { ®Ў­г«пҐ¬ ¬ ббЁў Ї®бҐйҐ­Ё© }
  init_queue(q);                        { Ё­ЁжЁ «Ё§Ёа㥬 ®зҐаҐ¤м }
  push_to_queue(q, s);                  { § в «ЄЁў Ґ¬ ў ®зҐаҐ¤м Ёбв®Є }
  v[s] := true;                         { Ї®бҐвЁ«Ё Ёбв®Є }
  p[s] := -1;                           { г Ёбв®Є  ­Ґв ЇаҐ¤Є  }

  while not is_queue_empty(q) do        { Ї®Є  ®зҐаҐ¤м ­Ґ Їгбв  }
  begin
    i := pop_from_queue(q);             { ¤®бв Ґ¬ ўҐаиЁ­г Ё§ ®зҐаҐ¤Ё }
    for j := 1 to n do                  { ЇҐаҐЎЁа Ґ¬ ўбҐ ўҐаиЁ­л }
      if not v[j] and                   { ўҐаиЁ­  ­Ґ Ї®бҐйҐ­  }
        (c[i, j]-f[i, j] > 0) then      { ॡ஠i->j ­Ґ­ бл饭­®Ґ }
      begin
        v[j] := true;                   { Ї®бҐвЁ«Ё ўҐаиЁ­г j }
        push_to_queue(q, j);            { Ї®«®¦Ё«Ё ўҐаЁиЁ­г j ў ®зҐаҐ¤м }
        p[j] := i;                      { i ЇаҐ¤®Є j }
      end;
  end;
  bfs := v[t];                          { ¤®и«Ё «Ё ¤® бв®Є  }
end;

{- Ћб­®ў­лҐ Їа®жҐ¤гал -}

{ min: ¬Ё­Ё¬г¬ Ё§ ¤ўге ўҐйҐб⢥­­ле зЁбҐ« }
function min(a, b: integer): integer;
begin
  if a > b then min := b else min := a;
end;

{ maxflow: §­ 祭Ёп ¬ ЄбЁ¬ «м­®Ј® Ї®в®Є  }
{ Ї®в®Є еа ­Ёвбп ў ¬ ваЁжҐ f, s-Ёбв®Є, t-бв®Є }
function maxflow(s, t: integer): integer;
var
  k: integer;
  d, flow: integer;
begin
  fillchar(f, sizeof(f), 0);            { ®Ў­г«пҐ¬ f }
  flow := 0;                            { Ї®в®Є Їгбв®© }

  while bfs(s, t) do                    { Џ®Є  бгйҐбвўгҐв Їгвм ®в Ёбв®Є  ў }
  begin                                 { ў бв®Є ў ®бв в®з­®© бҐвЁ, ЁйҐ¬   }
    d := oo;                            { ॡ஠ў н⮬ ЇгвЁ б ¬Ё­Ё¬ «м­®©  }
    k := t;                             { ­ҐЁбЇ®«м§®ў ­­®© Їа®ЇгбЄ­®©      }
    while k <> s do                     { бЇ®б®Ў­®бвмо                     }
    begin
      d := min(d, c[p[k], k]-f[p[k], k]);
      k := p[k];                        { ЎҐаҐ¬ ўҐаиЁ­г-ЇаҐ¤®Є }
    end;

    k := t;                             { Ё¤Ґ¬ Ї® ­ ©¤Ґ­®¬г ЇгвЁ ®в бв®Є   }
    while k <> s do                     { Є Ёбв®Єг                         }
    begin
      f[p[k], k] := f[p[k], k] + d;     { 㢥«ЁзЁў Ґ¬ Ї® Їап¬л¬ аҐЎа ¬ }
      f[k, p[k]] := f[k, p[k]] - d;     { 㬥­ми Ґ¬ Ї® ®Ўа в­л¬ аҐЎа ¬ }
      k := p[k];                        { ЎҐаҐ¬ ўҐаиЁ­г-ЇаҐ¤®Є }
    end;

    flow := flow + d;                   { 㢥«ЁзЁў Ґ¬ Ї®в®Є }
  end;

  maxflow := flow;                      { ў®§ўа й Ґ¬ ¬ ЄбЁ¬ «м­л© Ї®в®Є }
end;

{ init: Ё­ЁжЁ «Ё§ жЁп Ё ўў®¤ ¤ ­­ле }
procedure init;
var
  m, i, x, y, z: integer;
begin
  fillchar(c, sizeof©, 0);

  assign(input, 'flow.in');
  reset(input);

  read(n, m);

  for i := 1 to m do
  begin
    read(x, y, z);
    c[x, y] := z;
  end;

  close(input);
end;

{solve: аҐиҐ­ЁҐ }
procedure solve;
begin
  writeln(maxflow(1, n));
end;

{- ѓ« ў­ п Їа®Ја ¬¬  -}

begin
  init;
  solve;
end.



ВОТ ТАКОЙ КОД!!! КОДИРОВКА НЕ ПАШЕТ ЧЕ ДЕЛАТЬ?!?!


Это сообщение отредактировал(а) maxim1000 - 8.1.2008, 23:16
PM MAIL   Вверх
JackYF
Дата 8.1.2008, 18:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: нет
Всего: 162



Цитата(Scaut @  8.1.2008,  16:57 Найти цитируемый пост)
какой нах браузер.... код с разшерением .pas

и дальше что? это запрещает браузеру его открыть?


Цитата(Scaut @  8.1.2008,  16:57 Найти цитируемый пост)
КОДИРОВКА НЕ ПАШЕТ ЧЕ ДЕЛАТЬ?!?!

Успокоиться, прекратить писать капсом и попробовать сделать так, как посоветовали.


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
Kangaroo
Дата 8.1.2008, 18:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


AA - Aussie Animal
****


Профиль
Группа: Участник Клуба
Сообщений: 2042
Регистрация: 7.10.2006
Где: US

Репутация: нет
Всего: 104



Scaut, в ДОС кодировке он.
У тебя есть Windows Commander or Total Commander? Вот там нажимаешь Ф3 и в меню Вид выбираешь кодировку ДОС.


--------------------
Lost....
PM MAIL MSN   Вверх
JackYF
Дата 8.1.2008, 18:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: нет
Всего: 162



Кстати, у меня отказалось воспринимать под любой кодировкой, хотя явно похоже на ДОС кодировку. Возможно, она вообще битая.


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
Kangaroo
Дата 8.1.2008, 18:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


AA - Aussie Animal
****


Профиль
Группа: Участник Клуба
Сообщений: 2042
Регистрация: 7.10.2006
Где: US

Репутация: нет
Всего: 104



JackYF, дос, точно дос. Я прочитал  smile 


--------------------
Lost....
PM MAIL MSN   Вверх
JackYF
Дата 8.1.2008, 20:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: нет
Всего: 162



Kangaroo, странно, а чего у меня не хотело... ладно, выкладывай автору текст в нормальном виде, и будет закрывать тему smile


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
Kangaroo
Дата 8.1.2008, 21:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


AA - Aussie Animal
****


Профиль
Группа: Участник Клуба
Сообщений: 2042
Регистрация: 7.10.2006
Где: US

Репутация: нет
Всего: 104



Код

{ поиск м ксим льного поток  в сети by boris }
{ метод Форд -Ф лкерсон  }
{  лгоритм Эдмондс -К рп  }

{- Конст нты и переменные -}

const
  maxn = 100;                            { м кс. кол-во вершин }
  oo   = maxint;                         { бесконечность }

var
  { поток }
  f: array [1..maxn, 1..maxn] of integer;  { f[i, j] = -f[j, i] }
  { пропускные способности }
  c: array [1..maxn, 1..maxn] of integer;
  { количество вешрин}
  n: integer;

{- Поиск в ширину -}

{ Очередь }

const
  queue_size = maxn + 2;                { р змер очереди }

type
  queue = record                        { очередь }
    a: array [0..queue_size-1] of integer;
    head, tail: integer;
  end;

{ init_queue: иници лизиров ть очередь }
procedure init_queue(var q: queue);
begin
  with q do
  begin
    tail := 0;
    head := 0;
  end;
end;

{ is_queue_empty: пуст  ли очередь }
function is_queue_empty(const q: queue): boolean;
begin
  is_queue_empty := q.tail = q.head;
end;

{ push_to_queue: положить в очередь x}
procedure push_to_queue(var q: queue; x: integer);
begin
  with q do
  begin
    a[tail] := x;
    tail := (tail + 1) mod queue_size;
  end;
end;

{ pop_from_queue: дост ть из очереди }
function pop_from_queue(var q: queue): integer;
begin
  with q do
  begin
    pop_from_queue := a[head];
    head := (head + 1) mod queue_size;
  end;
end;

{ Переменные }

var
  { номер предыдущей вершины}
  p: array [1..maxn] of integer;
  { посещенность }
  v: array [1..maxn] of boolean;
  { очередь }
  q: queue;

{ bfs: поиск в ширину для метод  Форд -Ф лкерсон  }
{ возвр щ ет true, если существует путь от s до t }
function bfs(s, t: integer): boolean;
var
  i, j: integer;
begin
  fillchar(v, sizeof(v), false);        { обнуляем м ссив посещений }
  init_queue(q);                        { иници лизируем очередь }
  push_to_queue(q, s);                  { з т лкив ем в очередь исток }
  v[s] := true;                         { посетили исток }
  p[s] := -1;                           { у исток  нет предк  }

  while not is_queue_empty(q) do        { пок  очередь не пуст  }
  begin
    i := pop_from_queue(q);             { дост ем вершину из очереди }
    for j := 1 to n do                  { перебир ем все вершины }
      if not v[j] and                   { вершин  не посещен  }
        (c[i, j]-f[i, j] > 0) then      { ребро i->j нен сыщенное }
      begin
        v[j] := true;                   { посетили вершину j }
        push_to_queue(q, j);            { положили веришину j в очередь }
        p[j] := i;                      { i предок j }
      end;
  end;
  bfs := v[t];                          { дошли ли до сток  }
end;

{- Основные процедуры -}

{ min: минимум из двух вещественных чисел }
function min(a, b: integer): integer;
begin
  if a > b then min := b else min := a;
end;

{ maxflow: зн чения м ксим льного поток  }
{ поток хр нится в м трице f, s-исток, t-сток }
function maxflow(s, t: integer): integer;
var
  k: integer;
  d, flow: integer;
begin
  fillchar(f, sizeof(f), 0);            { обнуляем f }
  flow := 0;                            { поток пустой }

  while bfs(s, t) do                    { Пок  существует путь от исток  в }
  begin                                 { в сток в ост точной сети, ищем   }
    d := oo;                            { ребро в этом пути с миним льной  }
    k := t;                             { неиспользов нной пропускной      }
    while k <> s do                     { способностью                     }
    begin
      d := min(d, c[p[k], k]-f[p[k], k]);
      k := p[k];                        { берем вершину-предок }
    end;

    k := t;                             { идем по н йденому пути от сток   }
    while k <> s do                     { к истоку                         }
    begin
      f[p[k], k] := f[p[k], k] + d;     { увеличив ем по прямым ребр м }
      f[k, p[k]] := f[k, p[k]] - d;     { уменьш ем по обр тным ребр м }
      k := p[k];                        { берем вершину-предок }
    end;

    flow := flow + d;                   { увеличив ем поток }
  end;

  maxflow := flow;                      { возвр щ ем м ксим льный поток }
end;

{ init: иници лиз ция и ввод д нных }
procedure init;
var
  m, i, x, y, z: integer;
begin
  fillchar(c, sizeofй, 0);

  assign(input, 'flow.in');
  reset(input);

  read(n, m);

  for i := 1 to m do
  begin
    read(x, y, z);
    c[x, y] := z;
  end;

  close(input);
end;

{solve: решение }
procedure solve;
begin
  writeln(maxflow(1, n));
end;

{- Гл вн я прогр мм  -}

begin
  init;
  solve;
end.



Только буква "а" пропала smile 


--------------------
Lost....
PM MAIL MSN   Вверх
JackYF
Дата 8.1.2008, 21:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: нет
Всего: 162



Цитата(Kangaroo @  8.1.2008,  20:01 Найти цитируемый пост)
Только буква "а" пропала

во-во, я так и думал, что не совсем корректно всё-таки smile


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
Scaut
Дата 8.1.2008, 23:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 3.12.2007

Репутация: нет
Всего: нет



спасибо парни и простите за психоз))
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Алгоритмы"

maxim1000

Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Алгоритмы | Следующая тема »


 




[ Время генерации скрипта: 0.0560 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.