【DP】HDU 1176】的更多相关文章

HDU 1176 免费馅饼 题意:中文题目不解释. 思路:因为是从中间出发所以思路卡了许久,还在之前做了道HIHO入门的题.能想到的点,从时间思考,然后初始化1s的时候,4,5,6,的数值要特别赋值.之后就是统一的2-maxtime时间内,到当前位置就有能移动的三种情况,左移,右移,停留,比较前一秒情况的最大值+当前位置时间的馅饼值(maps[i][j]),最后求最大馅饼值得时候,要从maxtime来求. dp[i][j] = max(dp[i-1][j],dp[i-1][j-1],dp[i-1…
http://acm.hdu.edu.cn/showproblem.php?pid=1421 [题意] 给定n个数,要从n个数中选择k个二元组{x,y},最小化sum{(x-y)^2} 2<=2*k<=n<2000 [思路] 首先排序,一定选择相邻的两项作为一对 dp[i][j]表示选择到ai,组成j对时的最小值 两种选择:第j对中有ai,dp[i][j]由dp[i-2][j-1]转移来 第j对中没有ai,dp[i][j]由dp[i-1][j]转移来 注意初始化 [AC] #includ…
HDU 1260 Tickets 题意:有N个人要买票,你可以一个一个人卖票,时间分别为Xs,也可以相邻两个人一起卖票,时间为Ys,从早上八点开始卖票,问你何时最早将N个人的票卖完. 思路:解决情况是当前最优,要么就单卖,状态最优就是前一个人的,要么和前一个人一起拼凑,状态最优是前两个人的,取时间最短的. 时间显示问题,注意下上下午的事情就好了. dp[i] = min(dp[i-1]+signal[i],dp[i-2]+unit[i]) /** Sample Input 2 2 20 25 4…
HDU 1144 Piggy-Bank 题意:有这么个存钱罐,给你空的时候重量和满的时候的重量,再给你N中类型的硬币(给出N种硬币总数量和总重量,可多次使用),问你怎样恰好填满存钱罐,而让填入的硬币数量最少. 思路:完全背包,求最少填入硬币数量,要把dp数组全部填充为INF,求min,注意结果要恰好填满. dp[j]= min(dp[j],dp[j-w[i]]+v[i])(dp[j]代表当前步,所用硬币最小数目) /** Sample Input 3 10 110 2 1 1 30 50 10…
HDU 1078 Super Jumping! Jumping! Jumping! 题意: 有这么个游戏,从start到end(自己决定在哪停下来)连续跳圈,中间不能空一个圈不跳,圈里的数字必须比你上次跳到圈里的数字大,最后求你所有路过的圈中数字总和最大. 思路:很明显的最长上升子序列之和,状态方程就是: dp[i] = max(dp[i],dp[j]+a[i])(a[i]>a[j],且i>j,dp[i]是i当前最优状态) /** Sample Input 3 1 3 2 4 1 2 3 4…
HDOJ_1087_Super Jumping! Jumping! Jumping! [DP] Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 44670 Accepted Submission(s): 20693 Problem Description Nowadays, a kind of chess game called "Super…
Kattis - honey[DP] 题意 有一只蜜蜂,在它的蜂房当中,蜂房是正六边形的,然后它要出去,但是它只能走N步,第N步的时候要回到起点,给出N, 求方案总数 思路 用DP 因为N == 14 所以 最多走7步 我们不妨设 (7, 7) 为原点,然后 dp[0][7][7] = 1 因为 N == 0 的时候 方案数只有一个 那就是 不动吧.. dp[i][j][k] i 代表第几步 j k 分别表示 目前的位置 一个点 在一张图里面本来有八个方向可以走 这里六边形 我们只取六个方向就可…
HDOJ 1423 Greatest Common Increasing Subsequence [DP][最长公共上升子序列] Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 8768 Accepted Submission(s): 2831 Problem Description This is a problem from ZOJ 24…
HDOJ 1501 Zipper [DP][DFS+剪枝] Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 10886 Accepted Submission(s): 3925 Problem Description Given three strings, you are to determine whether the third str…
HDOJ 1257 最少拦截系统 [DP] Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 50753 Accepted Submission(s): 19895 Problem Description 某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统.但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹…