洛谷 P1983 車站分級(拓撲排序)

2021-10-09 05:17:21 字數 768 閱讀 9397

思路

對於每一趟車,將其經過的車站中,停靠的和不停靠的連一條邊,注意邊的去重,要雙向標記,不然有個點會超時,這樣拓撲排序遞推一下就能分級出來

**

#include

using

namespace std;

struct node

;const

int n =

1005

;int n, m;

int ru[n]

;vector <

int> g[n]

;int tong[n]

[n];

queue q;

int flag[n]

;int ting[n]

;int

main()

for(

int j = ting[1]

; j <= ting[k]

; j++)}

}}for(

int i =

1; i <= n; i++))

;}}int mosttop =1;

while

(!q.

empty()

)); mosttop =

max(mosttop, fro.level +1)

;}}}

cout << mosttop << endl;

return0;

}

洛谷 P1983 車站分級(拓撲排序)

一條單向的鐵路線上,依次有編號為 1,2,n的 n個火車站。每個火車站都有乙個級別,最低為 1 級。現有若干趟車次在這條線路上行駛,每一趟都滿足如下要求 如果這趟車次停靠了火車站 x,則始發站 終點站之間所有級別大於等於火車站x 的都必須停靠。注意 起始站和終點站自然也算作事先已知需要停靠的站點 例...

洛谷P1983 車站分級 拓撲排序

一條單向的鐵路線上,依次有編號為 1,2,n的 n 個火車站。每個火車站都有乙個級別,最低為 1 級。現有若干趟車次在這條線路上行駛,每一趟都滿足如下要求 如果這趟車次停靠了火車站 x,則始發站 終點站之間所有級別大於等於火車站 x 的都必須停靠。注意 起始站和終點站自然也算作事先已知需要停靠的站點...

洛谷 P1983 車站分級 拓撲排序

一條單向的鐵路線上,依次有編號為 1,2,n的 n個火車站。每個火車站都有乙個級別,最低為1 級。現有若干趟車次在這條線路上行駛,每一趟都滿足如下要求 如果這趟車次停靠了火車站 x,則始發站 終點站之間所有級別大於等於火車站x 的都必須停靠。注意 起始站和終點站自然也算作事先已知需要停靠的站點 例如...