拓撲排序 找入度爲0的點,刪去與其相連的所有邊,不斷重複這一過程。
var a:array[1..100,1..100]of longint;
v:array[1..100]of longint;
b:array[1..100]of boolean;
i,j,k,l,n:longint;
begin
fillchar(b,sizeof(b),true);
readln(n);
for i:=1 to n do
for j:=1 to n do
begin
read(a[i,j]);
if a[i,j]=1 then
inc(v[j]);
end;
for i:=1 to n do
for j:=1 to n do
if(b[j])and(v[j]=0) then
begin
write(j,' ');
for k:=1 to n do
if a[j,k]=1 then dec(v[k]);
b[j]:=false;
break;
end;
end.
士兵排隊問題
比賽名次
煩人的幻燈片
字符排序(poj 1094)
神經網絡 (NOIP 2003 vijos1105)
Labeling Balls (PKU 3687)
奶牛比賽(poj 3660)
重疊的圖像 (ZJU 1083)
最優貿易 (NOIP 2009)
逆拓撲排序(拓撲排序+優先隊列)
hdu 4857 逃生
POJ 3687 Labeling Balls
Vijos P1790 拓撲編號
拓撲排序+傳遞閉包
POJ 1094 Sorting It All Out
並查集+拓撲排序
hdu 1811 Rank of Tetris