首页 > 其他分享 >【笔记】动态规划选讲:凸优化技术大赏 2024.8.3

【笔记】动态规划选讲:凸优化技术大赏 2024.8.3

时间:2024-08-03 16:39:38浏览次数:19  
标签:选讲 frac 2024.8 Minkowski 分治 区间 12 大赏 dp

如果您是搜索引擎搜进来的。

很抱歉,没有您需要搜索的题目的题解。

典题

\(n\) 个物品的背包,重量在 \(1 \sim 4\) 之间,价值在 \(1 \sim 10^9\) 之间。\(n \leq 10^5\)。

Minkowski 和会遇到不连续的问题。不妨按照 \(i\bmod 12\) 划分 dp 数组,每个剩余系都是凸的。

  1. 枚举拿了 \(cnt_1\bmod 12\) 个 \(1\),\(cnt_2\bmod 6\) 个 \(2\)……。然后将 \(12\) 个 \(1\),\(6\) 个 \(2\)……绑在一起,贪心。

  2. 或者分治,一个分治区间维护 \(12\) 个凸函数,逐个合并。

[CF1787H] Codeforces Scoreboard

按照 \(k\) 从大到小排序。如果没有 \(a_i\),则直接按 \(k\) 从大到小做就最优。不妨设 \(dp_{i, j}\) 表示前 \(i\) 题中有 \(j\) 个题不是选的 \(a_i\),有:

\[dp_{i, j}=\max(dp_{i-1, j-1}+b_i-k_ij, dp_{i-1, j}+a_i) \]

说可以平衡树维护关于 \(j\) 的凸包。

[ABC305Ex] Shojin

计算区间的代价:先扔掉对答案贡献 \(b_i\) 的 \(a_i=1\) 的函数,那么剩下的函数复合起来增长超快,区间长度必然不会很大。进一步地,可以发现是按照 \(b_i/(a_i-1)\) 从小到大排序。

dp:由上述可知区间长度很小,可以暴力转移;还可以决策单调性,有一个 cdq 将分治决策单调性改到在线的做法,能使用莫队技巧计算区间权值。

还是可以 wqs 二分。有个共线问题,不一定能刚好切到中间。不过可以发现共线部分是一个等差数列,从两边分别逼近就能知道等差数列的两端。

[PA 2022] Nawiasowe podziały

题解 LGP9266【[PA 2022] Nawiasowe podziały】/ SS240121A【Bracket】 - caijianhong - 博客园 (cnblogs.com)

[CF1842I] Tenzing and Necklace

放弃了

DP的决策单调性优化总结 - 洛谷专栏 (luogu.com)

[GYM102268J] Jealous Split

放弃了

[JOISC 2023 Day3] 合唱

洛谷题解写得好啊

GYM102331J

Minkowski 和。然后树剖,对重链分治,或者全局平衡二叉树。

GYM102331H

单次询问又是 Minkowski 和。多次询问在线段树上 \(O(\log n)\) 个区间上 wqs 二分。

好像不是啊

GYM103860I

将题目改完要求最长的形如 \(01010101\cdots\) 的形式,\(k\) 个 \(01\) 可以 \(k\) 次 reverse 计入答案。当然指的都是 \(0/1\) 连续段。Minkowski 和。

LOJ6289 花朵

用动态 DP 的方法大力分治 FFT?

「JOISC 2022 Day1」京都观光

考虑给一个矩形,考察走左下边界和右上边界哪个更好。大概这样:

左下优于右上当且仅当:

\[a_j(r-l)+b_l(j-i)<a_i(r-l)+b_r(j-i) \]

\[\frac{a_j-a_i}{j-i}<\frac{b_r-b_l}{r-l} \]

考虑折线情况:

下面一行是 \(k\) 则有:

\[\frac{a_j-a_i}{j-i}<\frac{b_r-b_l}{r-l}\land \frac{a_k-a_j}{k-j}>\frac{b_r-b_l}{r-l} \]

\[\frac{a_j-a_i}{j-i}<\frac{a_k-a_j}{k-j} \]

看成 \((i, a_i)\) 的点,对两维分别求凸包,然后发现按照斜率顺序走,就是对两个维度的凸包求 Minkowski 和的意思。

「2021 集训队互测」蜘蛛爬树

\[ans=dis(u, v)+a_x\cdot\text{版本号之差}+dis(x, \text{u到v的路径}) \]

树剖,对重链分治,维护轻子树构成的凸包,还是做 Minkowski 和。这个只是大致的思路,意思是正确的解法和这个差很多。

[CF1534G] A New Beginning

转曼哈顿。Annie 可以走右上或右下,走到土豆的横坐标上时,曼哈顿距离必然最小(到达前单调不增)。

可以写出 dp 方程了。

Slope trick。

标签:选讲,frac,2024.8,Minkowski,分治,区间,12,大赏,dp
From: https://www.cnblogs.com/caijianhong/p/18340704

相关文章

  • 2024.8 做题记录 /
    galaxyplan8.2A.小怪兽(monster)你说得对但是决策单调性状物代价相等的都包含进去分治可以ac,正确性不知道,至少复杂度是假的。不过下述做法考场也想到了。首先做一个比较小的转化,\(Ans=n-\frac{1}{n}\sum_i\sum_j[a_i\leqp_j]\),这样就不用管一些乱七八糟的东西了谢谢喵>w<......
  • 2024.8.2 test
    A有长度为\(n\)序列\(A\),你要把构造长度相同的序列\(B\)使得\(\sumB_i=m\)。满足随机打乱\(B_i\)后,期望\(\sum[A_i>B_i]\)最小,求这个值。\(n\le1000,m\le5000\)。我们考虑背包,也就是\(0\simm\)的数选\(n\)个出来,和为\(m\)。设\(sum_i\)表示\(A_i\)里......
  • C高级(学习)2024.8.2
    目录1.指针函数概念格式2.函数指针概念格式基本用法3.函数指针数组概念格式  4.共用体格式定义共用体变量特性5.枚举定义格式6.存储类型(1)auto(2)static(3)extern(4)register7.条件编译(1)根据宏是否定义(2)根据宏值(3)防止头文件重复包含(放在头文件中)1.指针函......
  • 【笔记】计数选讲:容斥、LGV、集合幂级数、GF 2024.8.2
    今天写的很乱。[HEOI2013]SAO容斥。因为我们已经知道父亲\(<\)儿子时的情况(\(n!/\prod_isiz_i\),也适用于森林),那么儿子\(<\)父亲的情况就容斥掉,无限制的就当作那条边不存在。树上背包,记录当前节点为根的连通块大小和容斥系数的积。*[ECFinal23A]DFSOrder4转写为:统计多......
  • 2024.8.1 总结(集训)
    今天和昨天都是学图论。wwlw给我们讲了Tarjan求强连通分量、(有向图)缩点、欧拉路径和欧拉回路、2-SAT和某个奇妙的容斥DP题。感觉有收获,但是没有理解透。感觉lr好强啊,好多题好像都有思路。xwb也好强啊,在洛谷团队里的图论题单里rank1,1200分。我今天的主要问题还是理解......
  • 2024.8.1随笔
    前言今天下午最后的时间不想写题了,于是就准备拿来随便写写什么。上午讲的是一些图论中常见的考点的应用(大概),题目难度都在蓝到紫,感觉也不是完全不可做,或多或少都能有一些想法,有时能想到点子上,但也常常乱整。今天讲了有关连通分量、欧拉路、2-sat等知识的题,其中2-sat我全部遗......
  • 2024.8 - 做题记录与方法总结
    2024.8-RecordofQuestionsandSummaryofMethodology先分享一个歌单:永无止境的八月!2024/08/01先来点重量级的P4768[NOI2018]归程题面:[NOI2018]归程题目描述本题的故事发生在魔力之都,在这里我们将为你介绍一些必要的设定。魔力之都可以抽象成一个\(n\)个节......
  • 2024.8.1 test
    A\(n\)个点的完全图,\(i\toj(i<j)\)的边权是\(u_j-u_i\),问最小生成树。\(n\le3e5\)。考虑boruvka算法。boruvka算法是重复以下过程,直到只有一个连通块。找到所有连通块的连向外面的最小边,并把这些边加入最小生成树。不难发现这是最多做\(\logn\)次的。我们现在考虑......
  • 2024.8.1 作业
    使用两个线程完成两个文件的拷贝,分支线程1拷贝前一半,分支线程2拷贝后一半,主线程回收两个分支线程的资源代码:/*******************************************/文件名:threadwork.c/*******************************************/#include<myhead.h>//创建传输信息的结构体......
  • C高级(学习)2024.8.1
    目录shell命令数组数组的赋值数组的调用遍历数组函数函数的定义方式函数调用分文件编程源文件头文件include引用时“”和<>的区别编译工具gcc编译工具gdb调试make工具定义Makefile格式Makefile管理多个文件Makefile变量自定义变量预定义变量自动变量Ma......