探索距離 (AP325 P-7-1)
1.0s 256M輸入一個有向圖 \(G\) 與一個起點 \(s\),請計算由 \(s\) 出發可以到達的點數(不包含 \(s\)),並且計算這些可以到達的點與 \(s\) 的距離和,假設每個邊的長度均為 \(1\)。兩點之間可能有多個邊,邊的起點與終點未必不同。
輸入格式
第一行是兩個正整數 \(n\) 與 \(m\),代表圖的點數與邊數,圖的點是以 \(0 \sim n-1\) 編號;第二行是 \(s\) 的編號;接下來有 \(m\) 行,每一行兩個整數 \(a\) 與 \(b\),代表一個邊 \((a, b)\)。
限制
- \(1 \le n \le 100\)。
- \(1 \le m \le 4000\)。
- \(0 \le s \le n-1\),\(0 \le a, b \le n-1\);同一個邊可能重複出現,也可能 \(a = b\)。
輸出格式
第一行輸出可以到達的點數,第二行輸出這些點與 \(s\) 的距離總和。
評分說明
每筆計分測資獨立計分,每筆 5 分,共 100 分;範例不計分。
範例輸入 1
7 6
1
5 1
1 3
1 4
2 3
4 6
6 0
範例輸出 1
4
7
範例輸入 2
3 2
0
1 2
2 1
範例輸出 2
0
0
題目來源
本題出自中正大學吳邦一教授所著《AP325-從 APCS 實作題檢測三級到五級》(v1.5)第 7 章 P-7-1,第 227 頁;經作者同意於 AACPOJ 免費公開。教材下載:AP325 講義(Google Drive);Python 版:AP325-Python(HackMD)。
登入後即可撰寫程式並提交評測。
登入