【省选模拟】20/03/11

P 6142 [ U S A C O 20 F E B ] D e l e g a t i o n P P6142 [USACO20FEB]Delegation P P6142[USACO20FEB]DelegationP

  • 先二分答案,每次尽量选一个最大的传上去,我们排序后二分这个最大值,去掉它后双指针扫一遍,偶数的情况可以添加一个 0 减少讨论
    C o d e Code Code

P 6144 [ U S A C O 20 F E B ] H e l p Y o u r s e l f P P6144 [USACO20FEB]Help Yourself P P6144[USACO20FEB]HelpYourselfP

  • 左端点递增加入,维护右端点为 j j j l ∈ [ 1 , k ] l\in[1,k] l[1,k] 次幂, [ 0 , l i ) [0,l_i) [0,li) 的转移需要二项式展开转移到 r i r_i ri [ l i , r i ] [l_i,r_i] [li,ri] 的原封不动加到 r i r_i ri > r i >r_i >ri 的有一个 2 的贡献,这些操作均可以用线段树来实现
    复杂度 O ( N K 2 + N K l o g ( N ) ) O(NK^2+NKlog(N)) O(NK2+NKlog(N)) C o d e Code Code

P 5422 [ U S A C O 19 O P E N ] C o m p o u n d E s c a p e P P5422 [USACO19OPEN]Compound Escape P P5422[USACO19OPEN]CompoundEscapeP

  • 题意: N ( ≤ 3 e 4 ) ∗ K ( ≤ 6 ) N(\le 3e4)*K(\le 6) N(3e4)K(6) 的网格图的最小生成树个数
  • 考虑直接状压最后一列的情况,直接压每一个点的编号,合法状态数 S S S 大概只有 200 个
    暴力转移是 2 k + k − 1 2^{k+k-1} 2k+k1 的,但我们可以把横向的 k k k 条和纵向的 k k k 条分开转移
    预处理出转移到哪一个,复杂度上界是 O ( N S 2 k ) O(NS2^k) O(NS2k) 但转移显然不满
    预处理的时候用最小表示为点标号,并查集配合完成
    C o d e Code Code
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

FSYo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值