Показать сообщение отдельно
  #1  
Старый 17.04.2011, 21:53
HoTTaBbl4 HoTTaBbl4 вне форума
Прохожий
 
Регистрация: 17.04.2011
Сообщения: 2
Репутация: 10
По умолчанию Алгоритмы на графах

Задали мне в универе Написать програмку:
Существует связный граф, без ребер идущих между одинаковыми вершинами.
в первой вершине находится некоторый объект.
Два игрока по очереди перемещают его в одну из соседних вершин.
Этот граф горит. Изначально горит только первая вершина. За каждый следующий ход сгорает все вершины соединенные с уже горящими.
Цель игроков-чтобы объект сгорел не во время их хода. Требуется узнать, кто из игроков проиграет при правильной игре со стороны двух игроков.
Код:
program Project1;
{$APPTYPE CONSOLE}
uses
  SysUtils;
  var m:array[1..100,1..100]of Boolean;
  k,l,i,j,first,second:Integer;
begin
  read(k,l);
  for i:=1 to 100 do begin
    for j:=1 to 100 do begin
       m[i,j]:=False;
    end;
  end;
  for i:=1 to l do begin
      read(first,second);
      m[first,second]:=True;
  end;
  /////
а вот что делать дальше я вообще не понимаю
  ////
end.
мне кажется что здесь нужно как-то использовать BFS...
но я совершенно не знаю как придумать стратегию
Просьба не отправлять меня в гугл, или еще куда-нибудь. уже искал и так ничего и не нашел.
заранее спасибо
Ответить с цитированием