动态规划专题

动态规划专题

冲刺 noip 800 分,41 秒切 T1234

  • A:Helping People

    抽象题。

    发现区间只有不交与包含,可以想到建树(其实不太可以。

    因为期望 maxmax 期望不是一个东西,又发现 q 十分小,所以直接设 dpi,j 表示到节点 i 最大值增加了 j 的概率,q2 转移即可。

  • B:Birds

    智障题。

    发现魔力很大但总鸟数很小,直接设 dpi,j 表示到第 i 棵树抓了 j 只鸟的最大剩余魔力,直接转移就好了。

    Vjudge 上图片挂了,没有 ci104。。。

  • C:Positions in Permutations

    二项式反演板子。

    考虑求至少,设 dpi,j,1/0,1/0 表示到第 i 位,钦定了 j 个,因为转移与 i+1,i1 是否选了有关,所以压两位表示 i,i+1 是否选了。

    考虑第 i 位是否钦定转移即可,最后乘上没钦定的全排在反演即可。

  • E:Bear and Cavalry

    结论题。

    先考虑没有限制,贪心排序即可。

    有限制可以直接排序后 n2 转移。

    发现结论,最后的匹配一定可以变成一堆长度不超过三的块,两两之间没有联系。

    于是有了 O(n) 转移,nq 卡常可过。

    优秀的 OIer 不能只会暴力卡常。

    发现转移可以矩阵维护,max+ 组成的矩阵也满足结合律,单次最多只会修改 9 个矩阵。

    线段树维护单点改区间乘即可。

    也可以分块,块内暴力改,块间枚举合并。

  • F:ZS Shuffles Cards

    首先因为只能抽到 joker 才结束。

    所以可以用 ×

    期望轮数直接 dp,设 dpi 表示集合内有 i 个元素期望轮数,发现已经抽过的完全没意义,所以有 mm+ijoker,轮数加一,有 im+i 抽新牌,元素数加一。

    每轮期望次数可以递推,但考虑每张非 joker 放在 joker 前面的概率,期望其实就是 nm+1+1

    相乘即可。

  • G:Future Failure

    虽然我没写,但丝毫不影响我胡

    考虑先手必胜的方案,容易发现当前状态重拍为偶数或长度为奇数时先手必胜,其他情况先手必败。

    考虑计数,因为先手必胜太麻烦,考虑容斥,求先手必败。

    对于 n 的重拍 n!iai! 只有当:ai=nai=n,然后记忆化搜索即可。

    搜索时可以钦定一个 ai 单调递减,最后乘上非 0 的全排即可。

  • H:Tavas in Kansas

    把那两个人叫 A 和 B。

    先离散化。

    考虑 n2 dp。

    因为我们只关心分数大小,设 dpi,j,1/0 表示当 A 选到距离为 i,B 选到距离为 j 的分数差。

    把每个点到 A 和 B 的距离作为坐标,整到二维平面上来,就会变成两条直线扫扫扫,每次贡献就是矩阵和。

    因为有 sb 价值为 0 的点,所以要在开一个表示是否有点的二维平面。

    最后因为不知道是谁结束,所以倒序转移。

  • I:Game on Sum (Easy Version)

    先考虑设 dpi,j 表示第 i 轮,第 j 次加。

    有转移:

    dpi,j=max{min(fi1,j1+t,fi1,jt)}

    发现这就是两个一次函数,在 fi1,j1+fi1,j2 转移。

posted @   5k_sync_closer  阅读(13)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示