Не могу составить программу:
Проверьте, содержит ли граф, заданный с помощью списков инцидентности, вершину, в которую входят дуги от всех остальных вершин графа, но из которой не исходит ни одна дуга.
Помогите!!!!
Модератор: Модераторы
const
MaxN = 100;
MaxM = MaxN;
var
M,N : Integer;
G : array [1 .. MaxN,1 .. MaxN] of Boolean;
Cur,ACur : Integer;
ASol,BSol,Prev : array [1 .. MaxN] of Integer;
Ql,Qr : Integer;
Q : array [1 .. MaxN*2+1] of Integer;
function PBFS(A : Integer) : Boolean;
var
B : integer;
Found : Boolean;
begin
fillchar(Prev,sizeof(Prev),0);
Ql := 1;
Qr := 1;
Q[1] := A;
Found := false;
while (Qr>=Ql) and not Found do
begin
Cur := Q[Ql];
Inc(Ql);
for B:=1 to N do
if G[Cur,B] then
begin
ACur := B;
if BSol[ACur]=0 then
begin
Found := true;
break;
end
else if Prev[Bsol[ACur]]=0 then
begin
Prev[BSol[ACur]]:=Cur;
inc(Qr);
Q[Qr]:=BSol[ACur];
end;
end;
end;
PBFS:=Found;
end;
procedure PMax;
var
A,B : Integer;
Tmp : Integer;
begin
fillchar(ASol,sizeof(ASol),0);
fillchar(BSol,sizeof(BSol),0);
for A:=1 to M do
if PBFS(A) then
while Cur<>0 do
begin
Tmp:=ASol[Cur];
BSol[ACur]:=Cur;
ASol[Cur]:=ACur;
Cur:=Prev[Cur];
ACur:=Tmp;
end;
end;
alex208210 писал(а):Сиди дома и учи программирование бездарь.
Если обращение стоит в конце предложения, то перед ним ставится запятая, а после него тот знак, который нужен по смыслу: точка, восклицательный или вопросительный знак.
...
Безусловно будут удаляться:
Личные оскорбления в чей бы то ни было адрес, для ругани есть личная переписка по почте и приватные сообщения в форуме;
...
alex208210 писал(а):Сиди дома и учи программирование бездарь. Контрольные нужно делать самому, а не списывать у других.
stiff писал(а):Спасибо, но это не то(
resident писал(а):Правила форума:
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 13