題目大意:
題目是說,給你乙個n個節點的有向無環圖,然後,對於這個無環圖,我們對他進行拓撲排序,使得拓撲排序中的序列按照字典序的方式輸出.
解題思路:
直接套用toposort()模板。。。
先說說toposort()的含義:
拓撲排序就是說,我們在一完成一項工程的時候,這個工程分為了很多的子工程,我們不可能每次都一下完成很多的工程,我們要按照一定事
務之間的內在聯絡來完成相應的工程,比如你要完成a工程,那麼你必須先完成b工程,所以說b的優先順序高於a。那麼我們有建圖。。
**:
1 # include2 # include3 # include4 # include5 # include6 # include7 # include8 # include9 # include10 # include11 # include12 # include13 # include14 # include15 # include16 # include17 # include
18 # include19
20using
namespace
std;
2122
const
double pi=4.0*atan(1.0
);23
24 typedef long
long
ll;25 typedef unsigned long
long
ull;
2627 # define inf 999999999
28 # define max 521
2930
int edge[max][max];//
鄰接矩陣
31int
index[max];
32int
book[max];
33int
top;
34int
n,m;
3536
37void
init()
3845
for ( int i = 0;i < m;i++)
4654}55
}5657void
toposort()
5869
}70 book[step] = 1;71
if( top )
72 printf("");
73 printf("%d"
,step);
7475 top++;
76for ( int j = 1;j <= n;j++)
7782}83
84}85 printf("\n"
);86}87
88int main(void)89
9697
return0;
98 }
確定比賽名次 HDU 1285 ,拓撲
有n個比賽隊 1 n 500 編號依次為1,2,3,n進行比賽,比賽結束後,裁判委員會要將所有參賽隊伍從前往後依次排名,但現在裁判委員會不能直接獲得每個隊的比賽成績,只知道每場比賽的結果,即p1贏p2,用p1,p2表示,排名時p1在p2之前。現在請你程式設計序確定排名。input輸入有若干組,每組中...
HDU 1285 確定比賽名次 拓撲排序
problem description 有n個比賽隊 1 n 500 編號依次為1,2,3,n進行比賽,比賽結束後,裁判委員會要將所有參賽隊伍從前往後依次排名,但現在裁判委員會不能直接獲得每個隊的比賽成績,只知道每場比賽的結果,即p1贏p2,用p1,p2表示,排名時p1在p2之前。現在請你程式設計序...
拓撲排序 HDU 1285 確定比賽名次
g 確定比賽名次 time limit 1000msmemory limit 32768kb64bit io format i64d i64u submit status description 有n個比賽隊 1 n 500 編號依次為1,2,3,n進行比賽,比賽結束後,裁判委員會要將所有參賽隊伍從...