dp
糖人豆丁
这个作者很懒,什么都没留下…
展开
-
HDU 2602
/*Bone Collector Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 42006 Accepted Submission(s): 17477Problem Description Many years ago , i原创 2015-11-21 15:16:13 · 448 阅读 · 0 评论 -
dp学习
给定一个m行n列的矩阵,矩阵每个元素是一个正整数,你现在在左上角(第一行第一列),你需要走到右下角(第m行,第n列),每次只能朝右或者下走到相邻的位置,不能走出矩阵。走过的数的总和作为你的得分,求最大的得分。输入第1行:N,N为矩阵的大小。(2 <= N <= 500) 第2 - N + 1行:每行N个数,中间用空格隔开,对应格子中奖励的价值。(1 <= N[i] <= 10000)输出输出能够获原创 2016-03-06 19:57:12 · 400 阅读 · 0 评论 -
dp学习——最大字段和
输入第1行:整数序列的长度N(2 <= N <= 50000) 第2 - N + 1行:N个整数(-10^9 <= A[i] <= 10^9)输出输出最大子段和。输入示例6 -2 11 -4 13 -5 -2输出示例20 这道题也可以用二重循环、三重循环做,但用dp可以更有效的得到解,dp数组的含义:定义dp[i]为输入的以a[i]结尾的最大字段和。 状态转移方程为原创 2016-03-07 18:59:06 · 945 阅读 · 0 评论 -
动态规划
首先,动态规划不是一个特定的算法,它代表的是一种思想,一种手段 动态规划方法往往用于求解“最优化问题”,能用动态规划求解的问题的前提是问题具有“最优子结构性质”。 最优子结构性质:问题的最优解由相关子问题的最优解组合而成,而这些子问题可以独立求解。 动态规划的核心是“状态的表达”和“状态转移方程的建立”,状态的意义的确立直接关系到状态转移方程能否建立正确。 动态规划问题常用的有两种方法: a.原创 2016-04-16 18:43:15 · 584 阅读 · 0 评论 -
最大字段和
N个整数组成的序列a[1],a[2],a[3],…,a[n],求该序列如a[i]+a[i+1]+…+a[j]的连续子段和的最大值。当所给的整数均为负数时和为0。 例如:-2,11,-4,13,-5,-2,和最大的子段为:11,-4,13。和为20。 Input 第1行:整数序列的长度N(2 <= N <= 50000) 第2 - N + 1行:N个整数(-10^9 <= A[i] <= 10^9)原创 2016-04-16 22:03:00 · 1133 阅读 · 0 评论