兩個方法
方法一:
令root為0 ~ n - 1的加總(使用梯形公式,不過root要開long long因為加總會超過int上限)
接下來的n - 1行,將root 減去 b
最後root的值就是root的id
方法二:
同方法一,不過用xor運算(xor歸零律),另外,root用int即可因為bi不超過int
找到樹根後用dfs走遍樹就可以找到最遠距離
我找樹根的方式是建立一個布林陣列(初始False)for跑過每條線,把當小孩的人的打勾在布林陣列(改為True) for跑過布林陣列,找出唯一沒有變成True的人就是根給你參考w
我找樹根的方式是建立一個布林陣列(初始False)for跑過每條線,把當小孩的人的打勾在布林陣列(改為True)
for跑過布林陣列,找出唯一沒有變成True的人就是根給你參考w
這樣當然可以,我只是提供一個很省空間的做法而已