动态规划算法通常用于求解具有某种最优性质的问题。 那它和贪心有区别吗? 当然有。不然叫动态规划干啥? 幼儿园英语老师:DP是啥? 小盆友:Dog&Peppa pig 英语老斯:恩恩!真聪明! 然而,你是小盆友吗? 如果是 如果不是, DP是D****** P*******的缩写。 意思是动态规划。 ...
分类:
其他好文 时间:
2018-11-07 14:37:02
阅读次数:
170
嘟嘟嘟 这其实是一道贪心题,而不是dp。 首先我们贪心的取有优惠券中价值最小的,并把这些东西都放在优先队列里,然后看[k + 1, n]中,有些东西使用了优惠券减的价钱是否比[1, k]中用了优惠券的物品更划算,是的话就更新。 1 #include<cstdio> 2 #include<iostre ...
分类:
其他好文 时间:
2018-10-25 11:02:07
阅读次数:
205
题意: 最长递增子序列 思路: 普通的$O(n^2)$的会超时。。 然后在网上找到了另一种不是dp的写法,膜拜一下,自己写了一下解释 来自:https://blog.csdn.net/Adusts/article/details/80764782 代码: ...
分类:
其他好文 时间:
2018-10-11 19:38:05
阅读次数:
163
非典型数位dp 先预处理出f[i][j][k]表示从后往前第i位为j时k的个数,然后把答案转换为ans(r) ans(l 1),用预处理出的f数组dp出f即可(可能也不是dp吧……) cpp include include using namespace std; long long l,r,t[2 ...
分类:
其他好文 时间:
2018-07-27 01:23:47
阅读次数:
159
A:m段最大字段和问题https://www.cnblogs.com/yinbiao/p/9314528.htmlB:map的使用(根本就不是dp!!!)https://www.cnblogs.com/yinbiao/p/9314605.htmlC:裸LIS问题https://www.cnblogs... ...
分类:
其他好文 时间:
2018-07-21 22:47:42
阅读次数:
422
我是智障系列。用了及其麻烦的方法= =其实树形sp就能解决 设直径长度+1为len(环长) 首先k=1,直接连直径两端就好,答案是2\ n len 然后对于k=2,正常人的做法是树形dp:先求直径,然后把树的直径上的所有边权标为 1,再求一次直径设新直径+1为len2,答案是2\ (n?1)?len ...
标签:扩展卢卡斯+方案数推导。题解: 首先要想到使用组合数而不是DP,否则就会深陷泥潭而不可自拔了。 我们把两个序列拼起来,也就是a+b个位置,每一个位置都是0或1。自然有2^(a+b)种方案。我们分a==b和a>b两种情况来讨论(我也不知道怎么想到这两种情况是不一样的): a==b:首先a的赢和输 ...
分类:
其他好文 时间:
2017-12-05 14:28:13
阅读次数:
213
是不是dp[i][j]是到a[i]和b[j]的最小diff之和 那么dp[i][j] = min( dp[i-1][j-1]+math.abs(a[i]-b[j]), dp[i][j-1]) 第一个是肯定包含b[j]的,第二个是肯定不包含b[j]的, ...
分类:
其他好文 时间:
2017-12-02 14:08:59
阅读次数:
129
传送门 数位dp... ...大概都是这个套路吧... ... 写这个的时候直接水了一发... ...我也不知道自己写的是不是dp... ... 大概是主要内容和dp关系不大的dp... ... mark代码..细长的代码真是丑啊..换行太频繁了.... 1 #include<cmath> 2 #i ...
分类:
其他好文 时间:
2017-11-04 19:36:27
阅读次数:
226
题目链接:https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1376 题解:显然这题暴力的方法很容易想到就是以每个数为结尾最长的有多少个,但是这样显然会超时所以要想一个方法去优化,要么用stl要么就是数据结构 线段树是个可以 ...
分类:
其他好文 时间:
2017-07-03 12:25:59
阅读次数:
173