随笔分类 - DP
摘要:题意: 一共有n天 每天西瓜售价为dp[i]元 该天的西瓜能吃v[i]天 而且这天如果买了西瓜之前的西瓜就要扔掉 问每天都吃到西瓜的最小花费是多少思路: 从最后一天开始dp最小花费 并用线段树单点更新来维护#include #include #include #include using names...
阅读全文
摘要:题意:一共要吃n顿饭 公款m元 如果公款大于等于饭局所需费用 就全用公款 如果小于就自费 求最后能用的公款为多少思路: dfs(i - 1, val + dp[i]); dfs(i - 1, val);#include #include #include #include using namesp...
阅读全文
摘要:http://acm.csu.edu.cn/OnlineJudge/problem.php?cid=2071&pid=6题意:有一个由n个数组成的序列 要求出一个满足 max-min#include#include#include#include#include#include#include...
阅读全文
摘要:题意:说有1*x和2*x的长方形(1和2只能作为宽 ) 有一个2*m的空间 问如何组合才能使m的值最小思路:对2x的长方形不需要得讨论 对1x的长方形的记录总长度 并01背包 找到最接近sum/2 的值#include#include#include#include#...
阅读全文
摘要:#include#include#include#includeusing namespace std;struct Node{ int m; double p;};Node bank[200];double dp[100000];int main(){ int t,n; double p;...
阅读全文
摘要:#include#include#include#include#includeusing namespace std;#define INF 10000000int a[3000];int now[3000];int dp[2000+100][2000+100];int main(){ int ...
阅读全文
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=1160#include #include #include #include #include using namespace std;struct Node{ int w,s,id,fa;};Node mi...
阅读全文
摘要:题意: 输入一行字符串 只包含大小写字母 可以使用shift 和 caps 键 切换大小写 问最少按几次键思路:if(str[i]>='A'&&str[i]#include#include#includeusing namespace std;int dp[200][5];char st...
阅读全文
摘要:#include#include#include#include#includeusing namespace std;int a[120],c[120];int dp[100000+100];int main(){ int n,m; int i,j,k; while(scanf("%d%d"...
阅读全文
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=1069#include#include#include#includeusing namespace std;struct Node{ int a,b,c,dp;};Node node[3000];int cmp...
阅读全文
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=1176#include#include#include#includeusing namespace std;int dp[100000+10][12];int mat[100000+10][12];int ma...
阅读全文
摘要:两题都是一样的题目 只是hdu 1058 多了个7题意:求一个每个数因子仅含2 3 5 7 的 序列 问 第n个数是几思路: ans[i]=min(min(ans[n2]*2,ans[n3]*3),min(ans[n5]*5,ans[n7]*7)); if(an...
阅读全文
摘要:这题要注意的是 每次出发 起点和终点不同就可以算作不同路径思路: 从第一个起点开始dfs dp[x][y]记录从该点出发到达最后目的地有多少种走法#include#include#include#includeusing namespace std;int mat[200][200];int ...
阅读全文
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=2571思路: dp[i+1][j]=max(dp[i+1][j],dp[i][j]+mat[i+1][j]); dp[i][j+1]=max(dp[i][j+1],dp[i][j]+m...
阅读全文
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=1159题意 : 给出两个字符串 求出最长公共子序列思路: if(str1[i]==str2[j]) { dp...
阅读全文
摘要:http://acm.hust.edu.cn/vjudge/problem/visitOriginUrl.action?id=17322裸最大连续子序列 竟然差点拿来当区间dp来做= =#include #include using namespace std; #define INF 100000...
阅读全文
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=2602题意 : n个骨头 m的容量 给出n个骨头的 value 和 volume 求m能容纳的最大价值思路 : dp[j]=max(dp[j],dp[j-w[i]]+v[i]);#include#i...
阅读全文
摘要:题意 : 有一个特俗的天平 c 个指定的位置 g个给定重量的砝码 问用上所有砝码 使天平平衡的方案有几种思路: dp[i][j+c[k]*g[i]]+=dp[i-1][j]; #include#include#include#includeusing nam...
阅读全文
摘要:http://acm.hdu.edu.cn/status.php?user=515982859&pid=3033&status=5题意: 有n个产品 m金额 k种品牌 每个产品 属于 a 品牌 b的价格 且具有c的价值量 问 在每种品牌至少买一个产品的情况下 最大价值量是多少思路: ...
阅读全文
摘要:http://poj.org/problem?id=1384题意:给出一个储蓄罐 的空和满时的重量 再给出n种硬币的 value 和 weight 问满足正好装满罐子时的最小价值是多少思路 :if(dp[j]>dp[j-w[i]]+v[i]) dp[j]=dp[j-w[i]]+v[i];...
阅读全文

浙公网安备 33010602011771号