DP
Endeavor_yu
这个作者很懒,什么都没留下…
展开
-
洛谷P1005 矩阵取数游戏
洛谷P1005 矩阵取数游戏题意:给一个n行m列的矩阵,m次取数,每次从n行中每一行取一个数(只能从每一行的首/尾取),每取一个数对应一个得分,每行取数的得分 = 被取走的元素值$ \times 2^i$,其中i表示第i次取数(从1开始编号)。求最大得分之和。分析一下:虽然题目给的是一个矩阵,但是各行互不影响,因此只需每行各自用dp求出本行最优解,然和相加就是总体最优解。用M表示输入的矩...原创 2019-07-14 12:59:02 · 200 阅读 · 0 评论 -
洛谷P1018 乘积最大
洛谷P1018 乘积最大题意:给一个长度为n的数字串,在这个数字串中插入k个乘号,使得表达式的乘积最大分析一下:算了,懒得分析了,代码中有详细注释,直接看代码吧…代码君:#include <bits/stdc++.h>using namespace std;const int maxn = 45;struct BigInteger{ typedef uns...原创 2019-07-14 13:03:32 · 348 阅读 · 0 评论 -
洛谷 P1020 导弹拦截
洛谷 P1020 导弹拦截题意:自己读题吧…分析一下:本题实则是求最长不升子序列长度和最长上升子序列长度(如不理解,自行思索)此处附上一个我认为很好的关于单调子序列的博客:https://www.cnblogs.com/kindleheart/p/8859151.htmlPS:upper_bound和lower_bound函数只能用于递增序列,但是,凡是有个但是,稍加操作也可以用于递...原创 2019-07-14 13:06:23 · 345 阅读 · 0 评论 -
洛谷P1026 统计单词个数
洛谷P1026 统计单词个数题意:给一个字符串(题目中是以20个字符为一组输入的),字符串被分为k段,然后给定几个“单词”,问各段包含的单词总数最多是多少?(emmm,我jio得我应该说清楚了,看不明白的话还是点击上方链接看原题吧…)分析:需要进行字符串匹配,所以很容易想到哈希此处推荐一篇字符串哈希的博文:https://blog.csdn.net/pengwill97/article/...原创 2019-07-14 14:57:51 · 254 阅读 · 0 评论 -
洛谷P2015 二叉苹果树
洛谷P2015 二叉苹果树题意:给一棵二叉树,每条边有一个权值,去掉某些边之后,使剩下的二叉树边的权值之和最大分析:原创 2019-07-14 19:31:35 · 145 阅读 · 0 评论 -
洛谷P1040 加分二叉树
洛谷P1040 加分二叉树题意:按中序遍历的顺序给出一棵二叉树各个节点的值,求出这棵树的最大得分,以及此时的前序遍历记分规则如下:有两个子树:两个子树分数的乘积加上根的值有一个子树:该子树的分数加上根的值没有子树(叶子节点):该节点的值分析:输入数据是二叉树的中序遍历,那么就要考虑中序遍历的特点在中序遍历中,若确定一个点为根节点,那么这个点左侧的点一定为该根节点左子树上的节点...原创 2019-07-15 10:06:24 · 259 阅读 · 0 评论 -
洛谷P1052 过河
P1052 过河题意:题意很明了,就不赘述了(其实是我语文水平有限还很懒… )分析:dp很好想,状态转移方程也简单:dp[i]=min(dp[i],dp[i−j]+mark[i]);dp[i] = min(dp[i], dp[i - j] + mark[i]);dp[i]=min(dp[i],dp[i−j]+mark[i]);然而这个L的范围…都不用说TLE了,连数组都开不了好吧所以这...原创 2019-07-15 18:29:19 · 148 阅读 · 0 评论 -
HDUOJ1024 Max Sum Plus Plus(详解)
HDUOJ1024 Max Sum Plus Plus题意:给一个包含n个数的数组,从中选出m个没有交集的区间,使这m个区间的区间和的和最大,求出这个最大值分析:其实这个题n的范围如果不是那么大,能用二维dp写的话并不算难但是n就是1e6那么大,即使m的范围比较小基本也只能写一维dpfor(i=1...m)for (i=1...m)for(i=1...m) for(j=i......原创 2019-07-16 00:41:26 · 414 阅读 · 0 评论