洛谷的題解還沒看,看看有沒有什麼可以吸收的
解釋一下官方題解
\(200\)次詢問是這麼來的:對第一類情況,我們每次至少砍掉\(50\)個點,最多砍\(\frac{5000}{50}=100\)次,然後做第二類情況,我們問一次葉子,就要問一次根來判斷目標是否還在這棵樹裡面;對於第三類情況感覺只用問\(50\)次吧,因為如果不存在滿足等式的\(v\),最長鏈(這個鏈必須是指向根節點的,不能以某個點作為LCA拐點)就不超過\(50\)了,最多跳五十次啊
最後所說的二分查詢最佳化也比較顯然了
洛谷的題解還沒看,看看有沒有什麼可以吸收的
解釋一下官方題解
\(200\)次詢問是這麼來的:對第一類情況,我們每次至少砍掉\(50\)個點,最多砍\(\frac{5000}{50}=100\)次,然後做第二類情況,我們問一次葉子,就要問一次根來判斷目標是否還在這棵樹裡面;對於第三類情況感覺只用問\(50\)次吧,因為如果不存在滿足等式的\(v\),最長鏈(這個鏈必須是指向根節點的,不能以某個點作為LCA拐點)就不超過\(50\)了,最多跳五十次啊
最後所說的二分查詢最佳化也比較顯然了