a137: C. 蚯與地下城
標籤 : 2012國中組決賽
通過比率 : 0人/0人 (0%) [非即時]
評分方式:
Strictly

最近更新 : 2023-08-04 12:28

內容

2012 網際網路程式設計全國大賽 國中組決賽

傳說中,蚯蚓是個很喜歡在地下挖掘坑道的生物,而在地下挖洞有個優點,就是會找到一些神奇的寶物。

身為曾經征戰四方的勇者,你從附近的村民手中探查到一些情報,也買到一份手繪地圖。進到了由蚯蚓們挖掘出來的地下城後,輕鬆地殲滅那些因為黑暗而衍生出來的怪物。最後你走到一個黑暗大廳,經過一番搜索後找到了機關,按下了機關後,眼見之處盡是閃亮亮的寶藏。可惜你只有一雙手,無法全部搬走。

你知道如果想要寶藏,就得儘快搬走這些寶藏,因為蚯蚓們有個領導者 — 老蚯。老蚯是個上古生物,甚至比龍還要古老,你絕不想和他打上一架。更何況普通的蚯蚓大軍幾乎就可以用蚯海戰術把你淹掉。可是你又不忍心放棄這些寶藏。於是在搜索地下城後,你回到村莊中找到了負責運送貨物的螞蟻軍團。

問題來了,大部分的工蟻的頭腦十分簡單,無法認清地下城的路。這個地下城是由許多通道和交叉路口所構成,而通道的出口位置都很奇怪,都會在交叉路口的天花板上,爬上去非常困難,所以每條通道都是單向的單行道。

假設有 N 個交叉路口,路口會依照深度,由淺到深,編號從 1 到 N 。顯然編號為 1 的路口是入口,而編號為 N 的路口是藏寶處。工蟻在交叉路口上,會選擇另一個離地面更近的交叉路口走過去。換句話說,工蟻會從連出去的通道中,每次選擇目的地路口編號最小的通道走過去。然而工蟻們的行為模式很有可能會永遠找不到寶藏。

所以,現在你想要堵住一些通道,使得工蟻可以輕鬆按照他們的行走規則,從入口走到最深處的藏寶處。你又希望能夠在蚯蚓們還沒發現之前就儘快把寶物給搬走,但是堵住一條通道會需要花很多時間,所以你希望堵住最少條通道。在紙上規劃實在太慢了,於是你想要直接寫個程式規劃一下。

輸入說明

輸入檔的第一行有一個正整數 T (T ≤ 200),表示接下來總共有幾筆測試資料。每一筆測試資料的第一行有兩個整數 N,M,中間以一個空白隔開,分別表示交叉路口數量,以及通道數量。(1 ≤ N ≤ 50,0 ≤ M N2 N)

接下來會有 M 行,第 i 行有兩個正整數 ai,bi,中間以一個空白隔開,表示這條通道連接編號為 ai,bi 的兩個路口,且只能從 ai 走到 bi。(ai,bi ≤ 50)

保證不會有兩條通道連接同樣的起點和終點,並且不會有通道自己通到自己。

輸出說明

對每筆測試資料輸出一行,每行包含一個整數,代表最少要堵住幾條通道。如果不幸地,無論如何都無法走到藏寶處,則輸出 “-1” (不含引號)。

範例輸入
3
3 4
2 3
1 2
2 1
3 1
3 2
1 2
2 3
3 2
1 2
3 2
範例輸出
1
0
−1
測資資訊:
記憶體限制: 512 MB
公開 測資點#0 (100%): 1.0s , <1M
提示 :
標籤:
2012國中組決賽
出處:
NPSC [管理者:
zero (管理員)
]


編號 身分 題目 主題 人氣 發表日期
沒有發現任何「解題報告」