暴力跳父亲就过了。具体地,跳一次父亲相当于除以 222 下取整,每次删掉末尾的一位即可。
所以有个更好看的性质:两个点的 lca\text lcalca 其实是这两个点二进制表示的最长公共前缀。所以答案是 ∣x∣+∣y∣−2∣lcp(x,y)∣|x|+|y|-2|lcp(x,y)|∣x∣+∣y∣−2∣lcp(x,y)∣。
註冊一個 CZOJ 通用賬戶,您就可以在我們提供的所有線上評測服務上提交程式碼、參與討論。
使用您的 CZOJ 通用賬戶