专栏文章

题解:CF2162G Beautiful Tree

CF2162G题解参与者 1已保存评论 0

文章操作

快速查看文章及其快照的属性,并进行相关操作。

当前评论
0 条
当前快照
1 份
快照标识符
@mine86sx
此快照首次捕获于
2025/12/02 00:58
3 个月前
此快照最后确认于
2025/12/02 00:58
3 个月前
查看原文
体感上是绿的,但是构造题可能方差比较大。
首先考虑增量构造,瞪了 1 min 后感觉没有前途。
然后考虑调整法,先把所有点连到 11 上,则树的权值为 S=(n+2)(n1)2S=\frac{(n+2)(n-1)}{2},记 m=Sm=\left\lceil\sqrt{S}\right\rceil
m2=Sm^2=S,则构造完毕。
否则,容易想到将权值调整到 m2m^2,显然 m2Sm^2-S 是小于 2n+O(1)\sqrt{2}n+O(1) 的,在 nn 足够大时小于 2(n1)2\left(n-1\right)
m2Sm^2-S 为偶数时,可以调整 22 连接的点;
m2Sm^2-S 为奇数时,可以调整 33 连接的点为 22,然后调整 22 连接的点。
这里还存在一些边界条件,可以在 m2S7m^2-S\leqslant 7 时把目标权值换为 (m+1)2\left(m+1\right)^2,显然可以保证增加的权仍小于 2n+O(1)\sqrt{2}n+O(1)
然后 nn 较小的时候可能没法保证这个增量一定是小于 2(n1)2\left(n-1\right) 的,特判即可。
懒得 Copy 代码了,给个提交链接吧。
https://codeforces.com/contest/2162/submission/347214819
存在其他做法。

评论

0 条评论,欢迎与作者交流。

正在加载评论...