普通dp
文章平均质量分 51
Tianweidadada
一颗执着的心,一个平庸的梦。
展开
-
最长公共子序列 POJ1458
题目链接DP1、确定状态 maxLen[i][j]表示 a的左侧i个字符与b的左侧j个字符最长子序列长度2、边界条件(初始)maxLen[i][0] = maxLen[0][j] = 0;3、状态转移4、复杂度 = 状态数*计算每个状态所需时间 #include<stdio.h>#include<string.h>#define MAX(a,b) ((a) > (...原创 2018-03-25 09:40:57 · 223 阅读 · 0 评论 -
POJ 1088 滑雪 (记忆化、动态规划、排序优化)
滑雪Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 108063 Accepted: 41157 DescriptionMichael喜欢滑雪百这并不奇怪, 因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你。Mic...原创 2018-10-05 11:42:57 · 376 阅读 · 0 评论 -
基本动态规划-Poj 2241 巴比伦塔
题意:有很多不同的立方体(长宽高不同),每一种都有无穷多个,将他们一层层叠加起来,要求上门面一块的立方体的底面要小于下面的一块(长、宽都严格小于),问最多能搭建多高。Sample Input110 20 3026 8 105 5 571 1 12 2 23 3 34 4 45 5 56 6 67 7 7531 41 5926 53 5897 93...原创 2018-10-04 23:19:58 · 354 阅读 · 0 评论 -
文字游戏 dp
题目:给你一份单词表,和一个句子。求出该句子能有多少种不同的划分方法。例如:单词是ab 、cd、 a、 b、 c、 d句子是abcd。则共有 a/b/c/d、 ab/c/d、a/b/cd、ab/cd 四种。定义状态 表示某个 单词末尾在整个句子中的位置为 时,的种类数。例如在 abcd 中 ab为 (以 1 为 起始位置)。此题 也可归类为DAG 。以前的状态就是确定当前单词...原创 2018-10-02 19:02:05 · 589 阅读 · 0 评论 -
动态规划入门(数字三角形、DAG模型、最佳加法表达式、经典取石子游戏)
1、普通dpPOJ-1163 数字三角形递推式:递推法:#include<iostream>#include<cstring>using namespace std;int dp[105][105]; // dp[i][j] 表示 从(i,j) 到三角形底部 最大和 int a[105][105];//三角形值 int main() {...原创 2018-10-01 22:29:34 · 609 阅读 · 0 评论 -
状态压缩dp入门 POJ 3254
Corn FieldsTime Limit: 2000MS Memory Limit: 65536K Total Submissions: 6321 Accepted: 3361 DescriptionFarmer John has purchased a lush new rectangular pasture composed of ...原创 2018-09-30 23:13:59 · 227 阅读 · 0 评论 -
k个Fibonacci数组成的数
Number of ways to represent a number as sum of k fibonacci numbersGiven two numbers N and K. Find the number of ways to represent N as the sum of K Fibonacci numbers.Examples:Input : n = 12, k =...原创 2018-08-27 17:34:48 · 319 阅读 · 0 评论 -
每次可以走k步的爬楼梯种类数
Number of ways to reach Nth floor by taking at-most K leapsGiven N number of stairs. Also given the number of steps that one can cover at most in one leap (K). The task is to find the number of poss...原创 2018-08-27 11:13:37 · 721 阅读 · 0 评论 -
最大不相邻元素和
Maximum sum in circular array such that no two elements are adjacentGiven a circular array containing of positive integers value. The task is to find the maximum sum of a subsequence with the constr...原创 2018-08-27 10:07:21 · 1529 阅读 · 0 评论 -
蓝桥杯 算法提高 拿糖果 dp
算法提高 拿糖果 时间限制:1.0s 内存限制:256.0MB 问题描述 妈妈给小B买了N块糖!但是她不允许小B直接吃掉。 假设当前有M块糖,小B每次可以拿P块糖,其中P是M的一个不大于根号下M的质因数。这时,妈妈就会在小B拿了P块糖以后再从糖堆里拿走P块糖。然后小B就可以接着拿糖。 现在小B希望知道最多可以拿多少糖。输入格式 一个整数N输出格式 最多可以拿多少糖样例...原创 2018-05-22 13:04:08 · 347 阅读 · 0 评论 -
蓝桥杯 2015_9 矩阵快速幂 + 动态规划
题目描述:赌圣atm晚年迷恋上了垒骰子,就是把骰子一个垒在另一个上边,不能歪歪扭扭,要垒成方柱体。 经过长期观察,atm 发现了稳定骰子的奥秘:有些数字的面贴着会互相排斥! 我们先来规范一下骰子:1 的对面是 4,2 的对面是 5,3 的对面是 6。 假设有 m 组互斥现象,每组中的那两个数字的面紧贴在一起,骰子就不能稳定的垒起来。 atm想计算一下有多少种不同的可能的垒骰子方式原创 2018-03-28 15:49:36 · 263 阅读 · 0 评论 -
HDOJ 1078 记忆化搜索
题目链接:点击打开链接肥老鼠从(0,0)出发,每次最多水平或垂直移动K步(连续向同一方向),且移动停下的位置的cheese必须大于之前的,否则就被猫吃掉,求老鼠最多吃多少奶酪。刚接触dp尝试分析一下,方便自己理解dp[x][y]表示在从x,y出发移动k步最多可以吃到的奶酪数量 dp[x][y] = max(dp[nx][ny]+map[x][y],dp[x][y]); dp[nx][ny]...原创 2018-03-27 16:57:14 · 271 阅读 · 0 评论 -
NYOJ 995 硬币问题(经典动态规划)
硬币找零时间限制:1000 ms | 内存限制:65535 KB难度:3输入输入数据:第 1 行,为 N 和 T,其中 1≤N≤50 为硬币系统中不同硬币数;1≤T≤100000 为需要用硬币找零的总数。第 2 行为 N 个数值不大于 65535 的正整数,它们是硬币系统中各硬币的面值。当n,t同时为0时结束。输出输出数据:如 T 能被硬币系统中的硬币找零,请输...原创 2018-10-05 20:47:12 · 300 阅读 · 0 评论