随笔分类 -  ----动态规划

摘要:X公司有着严格的等级制度,除了公司所有者小H以外,其他人都有一个直属上司。没有下属的员工称为工人,其他人则称为领导者。为了加薪,工人们都会向他们的上司提交请愿书。当然,每个领导者都希望自己的下属能够尽可能快乐的工作,所以当至少有T%的下属提交请愿书时,那么这个领导者就... 阅读全文
posted @ 2017-10-24 20:02 扩展的灰(Extended_Ash) 阅读(76) 评论(0) 推荐(0)
摘要:X公司有着严格的等级制度,除了公司所有者小H以外,其他人都有一个直属上司。没有下属的员工称为工人,其他人则称为领导者。为了加薪,工人们都会向他们的上司提交请愿书。当然,每个领导者都希望自己的下属能够尽可能快乐的工作,所以当至少有T%的下属提交请愿书时,那么这个领导者就... 阅读全文
posted @ 2017-10-24 20:02 扩展的灰(Extended_Ash) 阅读(112) 评论(0) 推荐(0)
摘要:最近phantom得到了森の妖精的真传。在他练功的时候, 每秒他的思绪中都有一定的概率浮现出奇♂异的幻象,持续x秒的幻象将产生x^2 的幻象值。phantom练功发自真心,他想知道,在N秒内他期望产生的幻象值是多少。比较裸的期望dp设f[i]表示第i秒的期望幻象值那么... 阅读全文
posted @ 2017-10-23 21:28 扩展的灰(Extended_Ash) 阅读(123) 评论(0) 推荐(0)
摘要:最近phantom得到了森の妖精的真传。在他练功的时候, 每秒他的思绪中都有一定的概率浮现出奇♂异的幻象,持续x秒的幻象将产生x^2 的幻象值。phantom练功发自真心,他想知道,在N秒内他期望产生的幻象值是多少。比较裸的期望dp设f[i]表示第i秒的期望幻象值那么... 阅读全文
posted @ 2017-10-23 21:28 扩展的灰(Extended_Ash) 阅读(122) 评论(0) 推荐(0)
摘要:我们先写裸的dp,设φ[i]表示长度为i的划分方案数,φ(0)=1有φ(i)=Σφ(j) (|sum[j,i]|#include#include#define N 200010 #define LL long long#define M 1000000007 usin... 阅读全文
posted @ 2017-10-23 07:15 扩展的灰(Extended_Ash) 阅读(127) 评论(0) 推荐(0)
摘要:我们先写裸的dp,设φ[i]表示长度为i的划分方案数,φ(0)=1有φ(i)=Σφ(j) (|sum[j,i]|#include#include#define N 200010 #define LL long long#define M 1000000007 usin... 阅读全文
posted @ 2017-10-23 07:15 扩展的灰(Extended_Ash) 阅读(108) 评论(0) 推荐(0)
摘要:题意:给你一颗树,要求断掉一条边,使得剩下两个联通快的直径之和最大一看就是树形DP嘛,c1表示最长边c2次长,f表示父亲部分的最长路上面做法不讲,我们讲一种比较新奇的方法假设我们枚举断哪一条边,在lgn时间内求出两个联通快的直径不就行了嘛怎么做呢,我们发现,可以用树的... 阅读全文
posted @ 2017-10-17 20:24 扩展的灰(Extended_Ash) 阅读(101) 评论(0) 推荐(0)
摘要:题意:给你一颗树,要求断掉一条边,使得剩下两个联通快的直径之和最大一看就是树形DP嘛,c1表示最长边c2次长,f表示父亲部分的最长路上面做法不讲,我们讲一种比较新奇的方法假设我们枚举断哪一条边,在lgn时间内求出两个联通快的直径不就行了嘛怎么做呢,我们发现,可以用树的... 阅读全文
posted @ 2017-10-17 20:24 扩展的灰(Extended_Ash) 阅读(130) 评论(0) 推荐(0)
摘要:给你2个没有重复元素的序列A,B,求LCS我们将映射A[i]->i用在B上,对B求LIS即可,若A中没有B[i]直接跳过#include#include#include#includeusing namespace std;map s;int f[300010];in... 阅读全文
posted @ 2017-10-15 16:37 扩展的灰(Extended_Ash) 阅读(118) 评论(0) 推荐(0)
摘要:给你2个没有重复元素的序列A,B,求LCS我们将映射A[i]->i用在B上,对B求LIS即可,若A中没有B[i]直接跳过#include#include#include#includeusing namespace std;map s;int f[300010];in... 阅读全文
posted @ 2017-10-15 16:37 扩展的灰(Extended_Ash) 阅读(111) 评论(0) 推荐(0)
摘要:题意:给出n个没有区别的物品放入k个没有区别的盒子,求方案数这个题目可谓计数dp的经典我们令f[i][j][k]表示现在所有数和为i,有j个,最后一个为k的方案数那么显然,f[i][j][k]=∑f[i-p][j-1][p](1int n,k,f[5010][5010... 阅读全文
posted @ 2017-10-14 22:21 扩展的灰(Extended_Ash) 阅读(83) 评论(0) 推荐(0)
摘要:题意:给出n个没有区别的物品放入k个没有区别的盒子,求方案数这个题目可谓计数dp的经典我们令f[i][j][k]表示现在所有数和为i,有j个,最后一个为k的方案数那么显然,f[i][j][k]=∑f[i-p][j-1][p](1int n,k,f[5010][5010... 阅读全文
posted @ 2017-10-14 22:21 扩展的灰(Extended_Ash) 阅读(74) 评论(0) 推荐(0)
摘要:题意:有n([1,5000])个物品,每一个有价值v和代价w,当你选择了这个物品后,剩下没选的物品价值减少w,问最大价值?假设我们已经选好了物品,那么显然,按照w升序排序贪心是最优的选择让后我们可以用dp来计算最优方案,这样的话我们需要将物品按照w降序排序,否则无法计... 阅读全文
posted @ 2017-10-14 21:56 扩展的灰(Extended_Ash) 阅读(106) 评论(0) 推荐(0)
摘要:题意:有n([1,5000])个物品,每一个有价值v和代价w,当你选择了这个物品后,剩下没选的物品价值减少w,问最大价值?假设我们已经选好了物品,那么显然,按照w升序排序贪心是最优的选择让后我们可以用dp来计算最优方案,这样的话我们需要将物品按照w降序排序,否则无法计... 阅读全文
posted @ 2017-10-14 21:56 扩展的灰(Extended_Ash) 阅读(100) 评论(0) 推荐(0)
摘要:题意:求Fib(n)此题渗水,这里讲一种不用矩阵的方法令f[n]=Fib(n)我们假设k=n/2那么久有以下递推式:若n-k%2=1f[n]=f[k]*f[k]+f[k+1]*f[k+1]否则f[n]=f[k]*f[k+1]+f[k+1]*(f[k]+f[k+1])边... 阅读全文
posted @ 2017-10-11 21:46 扩展的灰(Extended_Ash) 阅读(224) 评论(0) 推荐(0)
摘要:题意:求Fib(n)此题渗水,这里讲一种不用矩阵的方法令f[n]=Fib(n)我们假设k=n/2那么久有以下递推式:若n-k%2=1f[n]=f[k]*f[k]+f[k+1]*f[k+1]否则f[n]=f[k]*f[k+1]+f[k+1]*(f[k]+f[k+1])边... 阅读全文
posted @ 2017-10-11 21:46 扩展的灰(Extended_Ash) 阅读(131) 评论(0) 推荐(0)
摘要:如果∑d≠2n-2说明错了否则,我们先构造出这棵树的直径,若一个di>2则我们将d-2个节点与其相连,所以answer=n-1-∑(max(2,d[i])-2)#includeinline int max(int a,int b){ return a>b?a:b; }... 阅读全文
posted @ 2017-10-11 21:24 扩展的灰(Extended_Ash) 阅读(85) 评论(0) 推荐(0)
摘要:如果∑d≠2n-2说明错了否则,我们先构造出这棵树的直径,若一个di>2则我们将d-2个节点与其相连,所以answer=n-1-∑(max(2,d[i])-2)#includeinline int max(int a,int b){ return a>b?a:b; }... 阅读全文
posted @ 2017-10-11 21:24 扩展的灰(Extended_Ash) 阅读(95) 评论(0) 推荐(0)
摘要:有两种字符串S,T。长度分别为n,m。现在需要在S里面有序地选出k个子串,且在T中出现的顺序与这k个子串的顺序相同。问这k个子串最大长度之和,n,m#include#includeusing namespace std;int n,m,K,f[1010][1010][... 阅读全文
posted @ 2017-10-07 21:32 扩展的灰(Extended_Ash) 阅读(165) 评论(0) 推荐(0)
摘要:有两种字符串S,T。长度分别为n,m。现在需要在S里面有序地选出k个子串,且在T中出现的顺序与这k个子串的顺序相同。问这k个子串最大长度之和,n,m#include#includeusing namespace std;int n,m,K,f[1010][1010][... 阅读全文
posted @ 2017-10-07 21:32 扩展的灰(Extended_Ash) 阅读(142) 评论(0) 推荐(0)