贺了 OI Wiki 上的代码(,是罗马游戏那题的
请忽略
萌新有两个小问题
Q1:
但是代码里的 dist 初始化为什么是 0?
Q2:
f[x] = f[t[x].ch[0]] = f[t[x].ch[1]] = merge(t[x].ch[0], t[x].ch[1]); // 由于堆中的点会 find 到 x,所以 f[x] 也要修改
不是很理解,x 不是被删除的结点吗?那为什么还要更新 f[x]?
f[x]