灌籃高手 貪心

2021-05-25 12:15:04 字數 1065 閱讀 9959

灌籃高手

tur.exe/tur.in/tur.out

題意描述:

小明所在的籃球俱樂部共有n位灌籃高手(包括他自己),編號為1到n。他們之間總是不斷地進行著挑戰。每一次挑戰都是兩個人單挑,其中某個人獲勝。設已經進行了m場挑戰,並且每場挑戰的結果都已經公布。現在進行一場超級總決賽,共進行(n-1)場淘汰賽以決出最強的灌籃高手。在這場總決賽中,a能勝b當且僅當在那m場挑戰中a勝過b或者a根本沒與b交手過。聰明的你也許已經發現,決賽的場次安排能夠改變最終的冠軍歸屬。現在要你求出所有可能成為冠軍的灌籃高手。

輸入檔案(tur.in)

第一行有乙個數n(1<=n<=100,000)。

以後n行中,第i行第乙個數為bi, 即在那m場比賽中i勝過的人的個數,後面有bi

個按公升序排列的數字(其中不可能有i),即i勝過的人的編號。

資料保證σbi

(即m)<=1,000,000

輸出檔案(tur.out):

僅有一行,第乙個數ge為所有可能成為冠軍的人的個數,後面ge個數按公升序排列,表示可能成為冠軍的人的編號。相鄰的數字間用乙個空格隔開。不要有多餘的空格。

輸入樣例:4

2 2 3 0

1 21 2

輸出樣例:

3 1 3 4

模擬打擂台的過程,用n*e的複雜度找出第乙個可能的獲勝者,然後用類似spfa的方法找出可能贏他們人,擴充套件到答案裡。

這樣的打裸肯定坑爹也過不來哦,用乙個鍊錶把所有的可能獲勝的人串起來,然後一旦他成為獲選的人,就將它刪去,(實際上就是lzn樹的思想,降低常數),這樣n越來越小,最後當然跑得出來。

寫醜了,居然比xqz要慢0.02秒......怨念中

「灌籃高手」的搖籃

灌籃高手 的搖籃 1.遊戲裡時間的概念 遊戲裡的1周 輪 指的是現實中的一天,即一次日常更新。比如乙個球員的合同是8,那麼該球員在你的球隊裡會呆8天,如果8天內未續約的話,他就會自動離開你的球隊,進入自由轉會市場。2.日常更新的概念 日常更新是指每天晚上17 30開始,各大陸陸續開始關閉更新,這需要...