![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
ACM&基础dp
文章平均质量分 80
基础dp
0iq2333
欢迎访问我的个人主页:0iq2333.github.io
展开
-
ACwing提高课-DP(区间dp、数位dp)
区间DP、数位DP原创 2022-04-06 16:17:25 · 316 阅读 · 0 评论 -
ACwing提高课-DP(状压DP)
状压DP原创 2022-04-06 10:46:41 · 174 阅读 · 0 评论 -
Acwing提高课-DP(背包模型)
ACwing背包模型原创 2022-04-06 09:49:19 · 171 阅读 · 0 评论 -
ACwing提高课-DP(数字三角形,最长上升子序列)
acwing提高课-DP原创 2022-04-05 11:24:58 · 350 阅读 · 0 评论 -
AcWing 271. 杨老师的照相排列 (多维线性DP)
杨老师的照相排列 这道题想了很长时间,最后看题解才学会的,呜呜呜,我好菜呀!!dp分析:dp三要素:状态、阶段、决策。状态:dp[a][b][c][d][e]dp[a][b][c][d][e]dp[a][b][c][d][e]从第111排到第555排放a~e人数的方案数。状态划分:每一行存放的人数。转移方程:如果前一行人数大于后一行人数:dp += dp(某一行人数-1);边界:dp[0][0][0][0][0]=1dp[0][0][0][0][0] = 1dp[0][0][0][0][0]原创 2020-10-01 21:27:50 · 281 阅读 · 0 评论 -
洛谷P1273有线电视网(树上背包)
传送门一、题解这是一道树上有依赖背包,我们将它转化为分组背包进行求解。我们设dp[i][u][j]dp[i][u][j]dp[i][u][j]表示以uuu为祖先的子树上,前i个儿子满足j个用户的最大收益。我们就可以写出转移方程,dp[i][u][j]=max(dp[i][u][v],dp[i−1][v][j−k]+dp[u当前儿子的v的最大个数][v][k]−w)dp[i][u][j] = max(dp[i][u][v],dp[i-1][v][j - k] + dp[u当前儿子的v的最大个数][v原创 2020-09-25 17:46:46 · 158 阅读 · 0 评论 -
树形dp基础知识(树的dfs序,树的深度,树的直径,树的重心)
一、树的dfs序1、思路对数进行深度优先搜索时,对于每个节点,在刚进入递归后以及即将回溯前各记录一次该点的编号,最后产生的长度为2N的节点序列就为树的DFS序。——摘自算法竞赛进阶指南(李耀东)2、性质每个节点的编号出现两次,一次为L[x],R[x]L[x],R[x]L[x],R[x]。闭区间[L[x],R[x]][L[x],R[x]][L[x],R[x]],就是以x为根的子树的DFS序。3、Codeconst int N = 1e5;int a[N<<1],cnt = 0;原创 2020-09-12 20:12:17 · 411 阅读 · 2 评论 -
Codeforces Round #668 (Div. 2)D. Tree Tag(树形DP树的直径 + 博弈论)
D. Tree Tag一、题目大意给你一棵有n个节点的无向树,两个人Alice和Bob一开始分别在a,b两个节点,Alice一次最多移动da个位置,Bob一次最多移动db个位置。当Alice在某次回合中移动到Bob的位置时,就算Alice获胜,相反Bob获胜。现在Alice先手,问你谁能获胜。二、题解当dis(a,b)<=dadis(a,b) <= dadis(a,b)<=da时,Alice在第一回合就能移动到Bob所在的位置。Alice获胜。当树的直径<=2∗da树的直原创 2020-09-07 11:18:06 · 1752 阅读 · 2 评论