這是一道拓撲排序的模板題,用來學拓撲排序很好。我的演算法62ms過的,效率還是很低,不過很好理解;用乙個結構體記錄每個點的入度出度就搞定了;
#include#include#include#include#include#include#include#include#include#include#include#define ll long long
#define inf 1<<30
using namespace std;
const int n=505;
int a,b,n,m,top;
struct node
s[n];
bool map[n][n]; // 用來標記a到b
bool vis[n]; // 用來標記是否已經push輸出了;
int st[n];
void push(int i) // 儲存最後排序結構;
void topsort()
break; // 加乙個這個才能夠保證是按照從小到大輸出;orz....}}
}}void print() // 列印結果;
{ for(int i=1;i
確定比賽名次 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進行比賽,比賽結束後,裁判委員會要將所有參賽隊伍從...