2026-3

P9433 [NAPC-#1] Stage5 - Conveyors

对于关键点整体遍历的操作,容易想到合并成连通块。记录两点间的距离为 \(dist\),走一遍连通块(即为连通块的边权和)的代价为 \(sum\)

  • 若在连通块内,代价为 \(2\times sum - dist\)
  • 若在连通块外,跳到最近的连通块的代价 \(cost_1\)\(cost_2\),代价即为 \(2\times sum - dist + cost1 + cost2\)

对于第二种情况,一种简便的实现是令连通块的一个点为根,则对于每个非连通块点,向上跳若干次即可,并不需要考虑向下跳。可以 \(log_2 n\) 倍增实现。

posted @ 2026-03-15 12:06  LoserBpds  阅读(1)  评论(0)    收藏  举报