本題改寫自 2016 年 3 月 APCS 考古題。
小 Y 是歪皮有限公司的大老闆,這家公司有著嚴格的企業管理階層,每個員工都被指定了一個位階。此外,除了小 Y 以外的每個人都配有一個直屬上司,直屬上司的位階一定會比自己高。小 Y 是全公司位階最高的人。
因為有著這樣的特色,員工們彼此溝通喜歡透過直屬上司或直屬下屬傳話。舉例來說,下圖是公司直屬關係圖,在上面的節點表示位階較高者,連邊表示兩人有直屬關係。如果 $1$ 號和 $3$ 號員工需要傳話,$1$ 號會通過直屬上司 $4$ 號,$4$ 號的直屬下屬 $2$ 號,$2$ 號的直屬下屬 $3$ 號來完成,這中間經過 $3$ 次傳話。
這樣的過程不盡然有效率,因此小 Y 想知道直屬關係最遠的兩個員工需要通過幾次傳話才能完成溝通。
輸入包含多筆測資。
每筆測資中,
第一行為一個正整數 $N$ 代表成員的個數,每人以 $0\sim N-1$ 之間唯一的編號代表。
接著的 $N-1$ 行,每行有兩個以一個空白隔開的整數 $a$ 與 $b$ ($0 \le a, b \le N-1$),代表 $a$ 是 $b$ 的直屬上司。
假設 $S$ 是一次執行中所有測資的 $N$ 總和。
在 $10\%$ 的測資中,$2 \le S \le 100$ ,小 Y 最多有 $2$ 個直屬下屬,其他人最多一個直屬下屬。
其中 $40\%$ 的測資滿足,$2 \le S \le 100$。
其中 $70\%$ 的測資滿足,$2 \le S \le 2000$。
其中 $100\%$ 的測資滿足,$2 \le S \le 100000$。
每筆測資輸出一行,輸出兩名員工需要的最多傳話次數。
APCS 歷屆
No. | Testdata Range | Constraints | Score |
---|---|---|---|
1 | 0 | 範例測資 | 0 |
2 | 1~6 | $2\le S\le 100$,是個路徑 | 10 |
3 | 0~25 | $2\le S\le 100$ | 30 |
4 | 0~44 | $2\le S\le 2000$ | 30 |
5 | 0~61 | 無額外限制 | 30 |