由於未來要學習的課程太多,新生非常茫然,希望給新生一個學習流程圖。
因此將畢業所需修習的學分分成n個課程,給予編號為1至n。
因為在修習任何課程前需具有相關知識才可順利學好,因此會要求有先修課程,需修過所有先修課程才可修此課程。
希望你能帮助新生制定一個學習流程圖,使得他們在修任意一個課程之前,它的先修課程都已全部被修完。
第一列2個整數n (0< n < 10000),m (0 < m < 100),表示課程數目與課程之間有相關的個數。
接下來m列,每列有二個整數u,v (u≠v),表示第u課程的修習需要先修過第v課程。
數字中間均用空格格開
如果不存在這樣的學習流程圖,請輸出0。
如果學習流程圖有解,請印出最佳解。
最佳解定義如下:
1. 需符合先修課程前後之順序規定。
2. 不違反第一點敘述的情況下,課程編號越大,需排越前面(如:若編號4及編號5沒有順序需求,則5需比4先修)。
假設 9, 8, 4 無順序規定,可能解如下: 9, 8, 4 9, 4, 8 8, 9, 4 8, 4, 9 則 9, 8, 4 為最佳解。
原因為相較其他解,它同時達成最佳解的兩個定義。
6 4 1 2 1 3 2 4 3 4
6 5 4 3 2 1
編號 | 身分 | 題目 | 主題 | 人氣 | 發表日期 |
沒有發現任何「解題報告」 |