
动态规划
Soap__
这个作者很懒,什么都没留下…
展开
-
Luogu 1258 队员分组
题目链接:https://www.luogu.com.cn/problem/P1285这是一道很好很好的题看一眼题目,就发现可能与二分图有关然后,经过一定时间的思考,你会发现,这道题好像并不能直接用图论算法或者动态规划解决这时候,我们就要考虑,是不是有一些可以用来贪心的定理。首先直观一般会想到关于可以分到一个集合的人的条件然后就会发现,一个人与不认识他或他不认识的人是绝对不可以分到同一个集合,这样是不是可以看做一个无向的边,又是分为两个集合,二分图染色?我们可以把每个人与不认识他或者他不认识的原创 2020-10-19 15:42:17 · 208 阅读 · 0 评论 -
2020.9.13 NOIP模拟赛4 T1 brick
题目描述:有nnn行mmm列个砖块,每个砖块有一个分数valuei,jvalue_{i,j}valuei,j,打一个砖块要耗费一颗子弹。砖块都是先打一列最下面那一个.其中存在一些奖励砖块,如果打到奖励砖块,会得到一颗子弹。初始时你有kkk颗子弹,可以决定打砖块的顺序,求最大分数输入格式:第一行三个整数n,m,kn,m,kn,m,k---------------然后是nnn行mmm列,每一个数代表每个砖块的分数值---------------接着是nnn行mmm列,每一个数代表该砖块是否为奖励砖块[0原创 2020-09-13 20:31:51 · 236 阅读 · 0 评论 -
ZJOI2006 物流运输
题目链接:https://www.luogu.com.cn/problem/P1772这道题有几种解法…看到m<=20m<=20m<=20,想到状压dpdpdp设dp[i][s]dp[i][s]dp[i][s]表示前iii天中,第iii天状态为sss的最小花费f[s]f[s]f[s]为每天的转移状态先要记忆化dfsdfsdfs处理出fff数组dp[i][s]=min(dp[i−1][s]+f[s],min(dp[i−1])+f[s]+k)dp[i][s]=min(dp[i-1]原创 2020-08-23 22:41:00 · 156 阅读 · 0 评论 -
NOI2007 货币兑换
题目链接:https://www.luogu.com.cn/problem/P4027典型的线性dpdpdp题目最低下居然还有提示dp[i]dp[i]dp[i]在第iii天之前买光股票的最大收入dp[i]=max(dp[j]∗ratejratej∗aj+bj∗ai+dp[j]ratej∗aj+bj∗bi)dp[i]=max(\frac{dp[j]*rate_j}{rate_j*a_j+b_j}*a_i+\frac{dp[j]}{rate_j*a_j+b_j}*b_i)dp[i]=max(ratej原创 2020-08-15 18:13:22 · 169 阅读 · 0 评论 -
NOI Online #1 入门组 魔法
题目链接:https://www.luogu.com.cn/problem/P6190题目大意:给定一个nnn个点mmm条边的图,你有kkk次施展魔法的机会,每次施展魔法可以让经过下一条边的权值在这一刻取负,求从111到nnn的最小花费考虑动态规划,设dp[i][j][k]dp[i][j][k]dp[i][j][k]表示从iii到jjj使用kkk次魔法的最小花费。dp[i][j][k]=min(dp[i][u][k−1]+dp[u][j][1],dp[i][u][1]+dp[u][j][k−1])dp原创 2020-08-15 09:57:29 · 259 阅读 · 0 评论 -
NOI Online #2 提高组 游戏
题目链接:https://www.luogu.com.cn/problem/P6478题意:给定一棵树,每次从里面选出各一个权值为111和000的结点,直到选完为止,求每次选出结点是另一个该次选出结点父亲的方案数直接计算答案很难,但我们发现选出至少iii个结点满足题目要求比较容易算出来,再利用二项式反演容斥一下即可设dp[i][j]dp[i][j]dp[i][j]表示从iii及其子树中选出jjj对题目所要求的点的方案数dp[i][j]=∑k1+k2+...+km=jdp[v1][k1]∗dp[v2]原创 2020-08-14 19:50:38 · 295 阅读 · 1 评论 -
csp2019 Emiya 家今天的饭
题目链接:https://www.luogu.com.cn/problem/P5664去年考场上我很菜。。。现在还是一样菜。。。。。。题目抽象出来就是给你一个nnn行mmm列的矩阵(数表),可以从里面选出任意个数,每一行只能选一个数,要求每一列选出的数不超过选出总数的⌊12⌋\lfloor \frac{1}{2} \rfloor⌊21⌋,每一个方案的贡献是所有选出的数的乘积,求所有方案之和取模如果要直接保证每一列选出的数不超过选出总数的⌊12⌋\lfloor \frac{1}{2} \rfloor原创 2020-08-13 14:56:34 · 214 阅读 · 0 评论 -
ZJOI2010 基站选址
题目链接:https://www.luogu.com.cn/problem/P2605题目的条件数据比较多,在一个地方建基站会影响左右两边看看数据范围,考虑dpdpdp因为基站会影响左右两边,设dp[i][j]dp[i][j]dp[i][j]表示在前jjj个村庄中建iii个基站,且最后一个基站建在第jjj个位置,val(i,j)val(i,j)val(i,j)代表iii至jjj间村庄www的花费(注意:jjj代表村庄)dp[i][j]=min(dp[i−1][k]+val(k,i))dp[i][j]原创 2020-08-12 10:54:14 · 209 阅读 · 0 评论