![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
动态规划
文章平均质量分 63
tianhaijun2013
来自湖南省
展开
-
完全背包问题
详解: 点击打开链接 #include#include#includeusing namespace std;struct node{ int volume; int values;}g[100];int max(int a,int b){ return a>b?a:b;}int f[1000];i原创 2013-08-02 16:31:02 · 730 阅读 · 0 评论 -
hdu FatMouse's Speed
点击打开链接FatMouse believes that the fatter a mouse is, the faster it runs. To disprove this, you want to take the data on a collection of mice and put as large a subset of this data as possible into原创 2013-07-28 21:03:28 · 660 阅读 · 0 评论 -
hdu Super Jumping! Jumping! Jumping!
题意:从一个点,一直跳,下一步只能够跳到比当前最大的,(就是与最长子序列差不多(可不连续的)。 限制与要求:多组测试,以零结束。 分析:状态转移方程。dp[i]=max(dp[i],dp[j]+a[i]),0 #include#includeint max(int a,int b){ return a>b?a:b;}in原创 2013-07-27 20:31:18 · 502 阅读 · 0 评论 -
hdu 免费馅饼
题意:一个人从坐标5,一秒钟只能向两边走一个坐标,老天在对应的秒内掉免费馅饼(可在同一坐标有多个),问你最多能够接下多个。限制与要求:多组测试,N个(《10000) T(10000),以零为输入结束。 得出状态转移方程为:dp[i][j-1]+=max(dp[i][j-1],dp[i][j],dp[i][j+1]); #include#includeint原创 2013-07-27 20:24:46 · 770 阅读 · 0 评论 -
hdu 数塔。
题目链接:点击打开链接 题意:从上到下,按照上面一步只能往下面两个方向走,所能够走出的最大值。限制与要求:T组测试,N(1)层。整数在(0,99) 分析:首先这是DP。应该从下往上的备忘录式搜索。 对应的DP方程:DP[i-1][j] +=max(dp[i][j],dp[i][j+1]); #include#includeint max(int a原创 2013-07-27 20:14:56 · 718 阅读 · 1 评论 -
hdu 计算直线的交点
点击打开链接题意:平面上有n条直线,且无三线共点,问这些直线能有多少种不同交点数。 问题:输出N条直线可能存在的交点数。 限制与要求:多个测试,对就每个测试从小到大输出所有可以存在的交点数。其中N〈=20; 检查:当N=2时,输出为0 1;当N=3时,输出为0 2 3; 分析:1,将n 条直线排成一个序列,直线2和直原创 2013-07-27 20:04:49 · 838 阅读 · 0 评论 -
Max sum
#includeint temp=1;int main(){ int T,i,start,end,start1,end1,n,a[100010]; scanf("%d",&T); while(T--) { scanf("%d",&n); for(i=1;i<=n;i++) scanf("%d",&a[i]);原创 2013-07-27 19:40:19 · 560 阅读 · 0 评论 -
hdu Employment Planning
题目链接 :点击打开链接A project manager wants to determine the number of the workers needed in every month. He does know the minimal number of the workers needed in each month. When he hires or fires a wo原创 2013-07-28 20:13:16 · 626 阅读 · 0 评论 -
hdu Monky and banana
题目链接:点击打开链接题意:给定N堆不同的积木,此积木这一类型数目是无限的。题目要求:用这N堆不同的积木,在下面的面比上面的积木的长要长,宽要宽,能够堆放的最大高度是多少。分析。可以先进行排序处理,(注意每一堆积木可以有三种不同的堆放形式,所以最多会有180种积木,排完序后,就跟最大下降子序列差不多了。所以可得状态转移方程:dp[i]=max(dp[i]原创 2013-07-28 08:45:04 · 650 阅读 · 0 评论 -
hdu Chopsticks
点击打开链接题目分析:些题大概意思是说,有N条不同长度的筷子,在题目中按照非递减的顺序输入。要求找出K+8 对(每对三根筷子使得每一对的最后两根的差的平方总和最少。)并输出最少值。看起来,这和搬寝室那一题差不多。状态转移方程可表示为;dp[i][j]=min(dp[i][j-1],dp[i-1][j-2]+(a[j]-a[j-1])^2;这里为什么是dp原创 2013-07-29 10:18:40 · 813 阅读 · 0 评论