AT_dp 26 题
AT_dp 26 题
A.Frog 1#
直接 dp。设
B.Frog 2#
上一题的升级版,同样设
C.Vacation#
设
D.Knapsack 1#
01 背包。设
可以将
注意:
E.Knapsack 2#
设
可以将
同上,
F.LCS#
设
现在还要求出最长公共子序列,于是可以从
G.Longest Path#
DAG 上求最长路。设
H.Grid 1#
设
I.Coins#
设
可以将
同理,
J.Sushi#
先考虑倒推。
设
整理得:
因为
K.Stones#
设
L.Deque#
区间 dp。设
-
,即太郎先手,则有 -
,即次郎先手,则有
M.Candies#
设
然后可以利用前缀和预处理出
则可以优化为
N.Slimes#
区间 dp。设
O.Matching#
状压 dp。设
P.Independent Set#
树形 dp。设
Q.Flowers#
设
可以用权值树状数组优化,设树状数组的
R.Walk#
设
然后发现它类似于矩乘的式子,则可以用矩乘优化。设
S.Digit Sum#
设
然后设
T.Permutation#
设
然后前缀和优化即可。
U.Grouping#
设
V.Subtree#
假设当前的根为
所以
假设当前已经求出
其中
但是因为有模数,所以不能用除法,要预处理前缀积与后缀积,然后直接相乘。
W.Intervals#
设
观察到有很多
而对于
X.Tower#
一眼背包。先排序,若
设
将
易得
但重量和是
可以发现重量和一定会小于等于
Y.Grid 2#
首先,易得从
设
如果把点
Z.Frog 3#
设
暴力拆平方得
整理得
现在想要让截距最小,所以可以对点
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 一文读懂知识蒸馏
· 终于写完轮子一部分:tcp代理 了,记录一下