现实击碎回忆,那梦中的唯一

2023.6.6

[SDOI2008] 洞穴勘测

不会 LCT,没关系,当只有加边的时候,并查集维护。当有删边的时候,我们用线段树分治把它强行变成加边。时间复杂度 O ( q log ⁡ q log ⁡ n ) O(q\log q\log n) O(qlogqlogn)

[SDOI2009] 虔诚的墓主人

注意到同一行两棵树之间选的方案数相同,那么一边扫一边维护方案,最后树状数组查询区间和即可。时间复杂度 O ( w log ⁡ w ) O(w\log w) O(wlogw)

[HAOI2012]高速公路

考虑计算贡献。总数除以总方案数。

考虑每条边的贡献: ∑ i = l r − 1 v i × ( i − l + 1 ) × ( r − i ) \sum\limits_{i=l}^{r-1} v_i\times (i-l + 1)\times (r - i) i=lr1vi×(il+1)×(ri),之前的 ABC 有考过,显然维护 i 2 , i , 1 i^2, i, 1 i2,i,1 为系数的区间和即可。这是简单的。时间复杂度 O ( m log ⁡ n ) O(m\log n) O(mlogn)

[ZJOI2007]最大半连通子图

有向图连通性相关。尝试 SCC 缩点,然后你发现在这个 DAG 上,半联通图一定是一条链。

那就好办了,随便 dp。 O ( n + m ) O(n+m) O(n+m)。所以图上连通性相关还是要想想 tarjan 之类的。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值