首页 > 其他分享 >【杂题乱写】12 月北京省选 DP 专题训练

【杂题乱写】12 月北京省选 DP 专题训练

时间:2023-12-16 12:14:06浏览次数:35  
标签:12 Submission 乱写 省选 枚举 子树 bmatrix 区间 DP

有一部分题目是模板题,就不放了。

D. Luogu-P5336 THUSC 2016 成绩单

考虑区间 DP,由于操作的特殊性,我们需要设计含有区间最值的状态,设 \(f_{l,r,i,j}\) 表示区间 \([l,r]\) 中的所有数只保留值域 \([i,j]\) 中的最小代价,\(g_{l,r}\) 为将区间 \([l,r]\) 的所有数都删去的最小代价。

\(g_{l,r}\) 的转移非常简单,就是直接枚举最后删的区间,设值域为 \([1,m]\),方程:

\[g_{l,r}=\min_{1\le i\le j\le m}\{f_{l,r,i,j}+a+b(j-i)^2\} \]

而 \(f_{l,r,i,j}\) 是枚举断点,左右区间可以选择直接删去或是变成子问题:

\[f_{l,r,i,j}=\min_{p=l}^{r-1} \{\min(g_{l,p}+f_{p+1,r,i,j},f_{l,p,i,j}+g_{p+1,r},f_{l,p,i,j}+f_{p+1,r,i,j})\} \]

提交记录:Submission - Luogu

H. AtCoder-AGC034_E Complete Compress

考虑判定,设 \(f_u\) 为 \(u\) 子树内所有棋子到 \(u\) 的距离和,那么当 \(f_u\) 为偶数时,答案是 \(\frac{f_u}{2}\)。但是当某个子树贡献的 \(f\) 很大时,可能无法在 \(u\) 位置集合。

每个子树内部可以自己“消化”一些距离,考虑求出 \(g_u\) 表示 \(u\) 子树内部“消化”能得到的最小距离和(即选择子树内的两个节点靠近不计入这里的距离)。那么最小的情况就是将 \(f\) 贡献最多的节点尽量减少。比较 \(2\max_{v \mathrm{son}(u)}\{f_v+siz_v\}\) 与 \(\sum_{v\in \mathrm{son}(u)} f_v+siz_v\) 即可,若 \(v\) 子树贡献超过一半,而 \(v\) 子树改为贡献 \(g_v\) 时贡献小于一般,则 \(g_u=0\),否则 \(g_u\) 为 \(v\) 的贡献与其他子树贡献的差。

判定就是 \(g_u\) 是否为 \(0\),使用换根 DP 即可。

提交记录:Submission - AtCoder

M. UniversalOJ-140 UER#4 被粉碎的数字

考虑数位 DP,范围是 \([1,kR]\) 中所有 \(k\) 的倍数。状态需要考虑模 \(k\) 的余数和当前 \(f(kx)-f(x)\) 的值,设 \(f(i,p,b,0/1)\) 表示考虑第 \(i\) 位,当前模 \(k\) 的余数是 \(p\),且已经确定的 \(f(kx)-f(x)=b\) 的方案数,\(0/1\) 是上界的限制。

转移枚举 \(kx\) 这一位上数 \(d\),那么转移到的状态 \(p'=(10p+d)\bmod k,b'=b+\left(d-\left\lfloor\frac{10p+d}{k}\right\rfloor\right)\)。

提交记录:Submission - UniversalOJ

P. CodeForces-1067D Computer Game *3100

暑假模拟赛题。

第一次升级一定会选择最大的 \(v=p_ib_i\) 升级,之后只选这个操作,这样的期望得分最高。

倒序 DP,设 \(f_t\) 为还剩 \(t\) 次操作时的期望最大值,转移是枚举进行哪个操作,并讨论成功与否。

\[f_t=\max_{i=1}^n \{p_i(a_i+(t-1)v)+(1-p_i)f_{t-1}\} \]

考虑优化,整理发现符合斜率优化形式:

\[-p_ia_i=((t-1)v-f_{t-1})p_i+(f_{t-1}-f_t) \]

要求 \(f_t\) 最大,即截距最小,那么有 \(X_i=p_i,Y_i=-p_ia_i\),维护一个下凸壳,可以单调栈预处理出,每次二分。

由于最优情况每次 \(f\) 增加 \(t\),所以 \((t-1)v-f_{t-1}\) 实际上不降。

考虑优化,\(t\) 很大,所以使用矩阵加速:

\[\begin{bmatrix}f_{t-1}&t-1&1\end{bmatrix}\times \begin{bmatrix}1-p_i&0&0\\p_iv&1&0\\p_ia_i&1&1\end{bmatrix}=\begin{bmatrix}f_t&t&1\end{bmatrix} \]

这样能二分一个在 \(i\) 处转移的区间来处理,时间复杂度 \(O(k^3n\log^2 t)\),改为倍增判断即可 \(O(k^3n\log t)\)。需要细致处理精度。

提交记录:Submission - CodeForces

标签:12,Submission,乱写,省选,枚举,子树,bmatrix,区间,DP
From: https://www.cnblogs.com/SoyTony/p/DP_Training_Problems_of_Provincial_Team_Selection_in_Bei

相关文章

  • H5628L 80V降压恒流IC 72V电动车前大灯驱动IC 输出9V 12V
    本文将介绍H5628L耐压100V降压恒流芯片的特点和应用,包括其80V降12V、降9V的降压能力,以及支持最大2.5A的电流。此外,文章还将阐述该芯片的电路保护和热性能等方面的优势。 H5628L是一款外围电路简单,采用VFPWM连续工作模式的非隔离式恒流LED驱动芯片。H5628L典型开关频率固定为130KHz......
  • 【杂题乱写】12 月北京省选 DP 专题训练
    有一部分题目是模板题,就不放了。D.Luogu-P5336THUSC2016成绩单考虑区间DP,由于操作的特殊性,我们需要设计含有区间最值的状态,设\(f_{l,r,i,j}\)表示区间\([l,r]\)中的所有数只保留值域\([i,j]\)中的最小代价,\(g_{l,r}\)为将区间\([l,r]\)的所有数都删去的最小代价。......
  • [ARC124C] LCM of GCDs 题解
    题目跳转Fake_Solution前言[warning]:本题解的做法是错法,但是正确概率贼高。离谱的是正确率还可以叠加。正解是记搜,时间复杂度可以证明。正解看文末。思考众所周知一个公式:\[a\timesb=\operatorname{lcm}(a,b)\times\gcd(a,b)\]如果你不知道——自证吧,不难。于是,移一......
  • 【杂题乱写】12 月北京省选 DP 专题训练
    有一部分题目是模板题,就不放了。D.Luogu-P5336THUSC2016成绩单考虑区间DP,由于操作的特殊性,我们需要设计含有区间最值的状态,设\(f_{l,r,i,j}\)表示区间\([l,r]\)中的所有数只保留值域\([i,j]\)中的最小代价,\(g_{l,r}\)为将区间\([l,r]\)的所有数都删去的最小代价。......
  • 读程序员的README笔记12_On-Call
    1. 行为准则2. On-Call工程师2.1. On-Call工程师是应对计划外工作的第一道防线,无论是生产环境问题还是临时支持请求2.2. 将深度工作与运维工作分开,可以让团队中的大多数人专注于开发任务2.3. On-Call工程师只需专注于不可预知的运维难题和支持任务3. On-Call的工作方......
  • 12.15每日总结(阅读笔记8)
    《人月神话》这本书是软件工程类的一本经典著作。阅读这本书的第一感受就是感觉这本书不像是一种和学习相关的书,更像是用很多形象的比喻,阐述项目管理当中的一些问题,让读者能够很轻松,明白的去阅读。一般在大学学习计算机行业的时候,都会学习一门叫做软件工程的课程,老师也会跟我们讲......
  • 2023.12.15
    分布式文件系统的特点如下:hdfs的主从结构: hdfs的分块存储:  hdfs的副本机制:为了保证数据安全,把数据放到其他机器上 hadoop文件系统操作:hadoopfs  这个Hadoop配置了默认访问为hdfs文件系统。hdfs常用shell命令:   本地文件系统即客户端所在机器,假如你在n......
  • 12/15每日总结
    今天进行了CIFAR10的实战任务importtorchfromtorchimportnnimporttorch.nn.functionalasFimporttorchvisionimporttorchvision.transformsastransformsimportmatplotlib.pyplotaspltimportnumpyasnp#%%transform=transforms.Compose([transforms.T......
  • 【愚公系列】2023年12月 通用职责分配原则(四)-高内聚原则(High Cohesion Principle)
    ......
  • 2023年12月日记
    12.15今天还是下雪,好看捏,早上不用跑操,多睡了十分钟,万豪附中薄纱本部。第一节就是oi,上完李帅早读过来了。huge终于把luogu给我们几个开开了。不知道干啥,决定学DP优化,看了几篇博客就写了。写了个CF327C,很典的一道单调队列优化,写完调的时候jd一直在打扰我要口香糖。jd:我都一年......