![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
DP
文章平均质量分 89
H煊
缓一会儿。。。
展开
-
2017百度春招 不等式数列(DP)
度度熊最近对全排列特别感兴趣,对于1到n的一个排列,度度熊发现可以在中间根据大小关系插入合适的大于和小于符号(即 '>' 和 ''),度度熊想知道对于1至n任意的排列中有多少个排列可以使用这些符号使其为合法的不等式数列。思路:dp[i][j]表示有i个数字及j个小于号(或大于号)所能组成的数量(即大于号(或小于号)为i-j-1);全排列的生成我们按从1到n递增逐个插入来生成;当插入第i个数原创 2017-05-24 11:52:17 · 494 阅读 · 0 评论 -
“玲珑杯”ACM比赛 Round #18 C(dp)
C -- 图论你先敲完模板Time Limit:5s Memory Limit:256MByteSubmissions:852Solved:216DESCRIPTION今天HHHH在操场上跑步,HHHH作为一个爱运动的人,肯定会想方设法把跑步所消耗的能量减到最少.现在这个操场上有nn个可以休息的点,他们的坐标分别为x1,x2...xn原创 2017-07-16 20:57:26 · 230 阅读 · 0 评论 -
航线设置(dp)
问题描述在美丽的莱茵河畔,每边都分布着N个城市,两边的城市都是唯一对应的友好城市,现需要在友好城市间开通航线以加强往来,但因为莱茵河常年大雾,如果开设的航线发生交叉就有可能出现碰船的现象。现在要求尽可能多地开通航线并且使航线不能相交。输入有若干组测试数据,每组测试数据的第一行是一个整数n,它表示每边都分布着n个城市(1输出对每组测试数据,首先在一行上输出“Case #:”,其中原创 2017-07-23 10:08:39 · 902 阅读 · 0 评论 -
POJ1505 Copying Books(dp)
Copying BooksTime Limit: 3000MS Memory Limit: 10000KTotal Submissions: 8818 Accepted: 2743DescriptionBefore the invention of book-printing, it was very hard to原创 2017-07-24 11:00:51 · 262 阅读 · 0 评论 -
NOI2000 分区联赛 第二题(dp)
题意:一个长度为N的数串插入K个“×”的最大乘积;思路:dp[i][j]:=长度为i+1的数串插入j个“×”的最大乘积;状态转移方程:dp[i][j]=max{dp[t][j-1]*区间(t+1~i)数值}(j-1初始化:d[i][0]=d[i-1][0]*10+s[i]-'0';代码:#include using namespace std;const原创 2017-07-24 13:02:05 · 275 阅读 · 0 评论 -
POJ1692 Crossed Matchings(dp)
Crossed MatchingsTime Limit: 1000MS Memory Limit: 10000KTotal Submissions: 2938 Accepted: 1910DescriptionThere are two rows of positive integer numbers. We can原创 2017-07-26 17:50:36 · 611 阅读 · 0 评论 -
ZOJ 1107 FatMouse and Cheese(记忆化搜索)
FatMouse and CheeseTime Limit: 10 Seconds Memory Limit: 32768 KBFatMouse has stored some cheese in a city. The city can be considered as a square grid of dimension n: each grid locati原创 2017-08-18 20:23:00 · 460 阅读 · 0 评论 -
ZOJ 1108 FatMouse's Speed(dp+路径还原)
FatMouse's SpeedTime Limit: 2 Seconds Memory Limit: 65536 KB Special JudgeFatMouse believes that the fatter a mouse is, the faster it runs. To disprove this, you want to take the原创 2017-08-19 11:45:33 · 271 阅读 · 0 评论 -
ZOJ 1093 Monkey and Banana(dp)
Monkey and BananaTime Limit: 2 Seconds Memory Limit: 65536 KBA group of researchers are designing an experiment to test the IQ of a monkey. They will hang a banana at the roof of a buil原创 2017-08-19 13:08:46 · 245 阅读 · 0 评论 -
蓝桥杯 K好数(dp)
K好数思路:动态规划即可。状态:dp[i][j]:=表示第i位以j结尾的K好数。状态转移方程:dp[i][j]=∑dp[i-1][p](p!=j-1&&p!=j+1)(相邻两位不能是相邻的数字)。代码:#include#include# define MOD 1000000007long long f[101][100000];long long K(原创 2017-09-13 20:59:01 · 311 阅读 · 0 评论 -
HDU 2089 不要62(数位dp)
不要62数位不能有4和62,没有4的话在枚举的时候判断一下,而对于62的话,涉及到两位,当前一位是6或者不是6这两种不同情况我们计数是不相同的,所以要用状态来记录不同的方案数。dp[pos][state]表示当前第pos位,前一位是否是6的状态,这里state只需要0和1两种状态就可以了。代码:#include using namespace std; type原创 2017-09-13 21:27:53 · 179 阅读 · 0 评论 -
2017 百度之星 复赛 Valley Numer(数位dp)
Valley Numer数位dp,state标志前面若干位是否存在递增序列。代码:#include using namespace std;typedef long long ll ;const int max_n=105;const int mod = 1000000007;ll n;ll dp[max_n][13][2], a[max_n];stri原创 2017-09-13 22:43:46 · 433 阅读 · 0 评论 -
Bribe the Prisoners(GCJ 2009 Round 1C C)(dp)
题意:一个监狱里有P个并排着的牢房。从左至右依次编号为1,2,...,P。最初所有的牢房里都住着一个囚犯。相邻的两个牢房之间可以互通信息。现在要释放一些囚犯。如果释放某个牢房里的囚犯,其相邻的牢房里的囚犯就会知道,因而发生暴动。所以,释放某个囚犯时,必须要贿赂两旁相邻牢房的囚犯一枚金币。另外,为了防止释放的消息在相邻牢房间传开,不仅两旁直接相邻的牢房,所有可能听到消息的囚犯,即直到原创 2017-08-29 15:01:44 · 444 阅读 · 0 评论 -
ZOJ1025-Wooden Sticks(dp)
Wooden SticksTime Limit: 2 Seconds Memory Limit: 65536 KBThere is a pile of n wooden sticks. The length and weight of each stick are known in advance. The sticks are to be processed by a原创 2017-07-13 19:26:52 · 228 阅读 · 0 评论 -
NOJ1060-接苹果(dp)
接苹果时间限制(普通/Java) : 1000 MS/ 3000 MS 运行内存限制 : 65536 KByte总提交 : 296 测试通过 : 126 比赛描述很少有人知道奶牛爱吃苹果。农夫约翰的农场上有两棵苹果树(编号为1和2), 每一棵树上都长满了苹果。奶牛贝茜无法摘下树上的苹果,所以她只能等待苹果 从树上落下。但是原创 2017-07-13 14:25:12 · 366 阅读 · 0 评论 -
2017ZZUACM省赛选拔 聪明的田鼠
田鼠MIUMIU来到了一片农田,农田可以看成是一个M*N个方格的矩阵。每个方格里放有一定的粮食。MIUMIU看到这里,兴奋不已,它要拿走多多的粮食,以备过冬。但MIUMIU要么往前走(向右) ,要么往下走。 但它很聪明,一定会找到一条拿走最多粮食的路径。MIUMIU目前在入口位置, 坐标为(1,1),出口位置在坐标(M,N)。 请你编程,计算一下当MIUMIU走出农田时,最多能拿走多少粮食原创 2017-06-23 23:19:05 · 661 阅读 · 0 评论 -
2017滴滴校招 数字和为sum的方法数(DP)
给定一个有n个正整数的数组A和一个整数sum,求选择数组A中部分数字和为sum的方案数。 当两种选取方案有一个数字的下标不一样,我们就认为是不同的组成方案。 输入描述:输入为两行: 第一行为两个正整数n(1 ≤ n ≤ 1000),sum(1 ≤ sum ≤ 1000) 第二行为n个正整数A[i](32位整数),以空格隔开。输出描述:输出所求的方案数输入例子:5 15原创 2017-05-24 23:15:21 · 2067 阅读 · 0 评论 -
2017滴滴校招 连续最大和(DP)
一个数组有 N 个元素,求连续子数组的最大和。 例如:[-1,2,1],和最大的连续子数组为[2,1],其和为 3 输入描述:输入为两行。第一行一个整数n(1 <= n <= 100000),表示一共有n个元素第二行为n个数,即每个元素,每个整数都在32位int范围内。以空格分隔。输出描述:所有连续子数组中和最大的值。输入例子:3-1 2 1原创 2017-05-24 21:22:14 · 1005 阅读 · 0 评论 -
“玲珑杯”线上赛 Round #15 A Reverse the lights(dp)
DESCRIPTION有nn个灯,初始时都是不亮的状态,每次你可以选择一个某一个灯,不妨记为xx,所有满足和xx距离不超过kk的灯的状态都将被翻转,选择第ii个灯的代价记为cici,问最终所有灯都是亮的状态的最小花费.INPUT输入有两行,第一行包含两个正整数n(1≤n≤10000)和k(0≤k≤1000)n(1≤n≤10000)和k(0≤k≤100原创 2017-06-17 10:03:50 · 192 阅读 · 0 评论 -
2017网易春招 分饼干(DP)
易老师购买了一盒饼干,盒子中一共有k块饼干,但是数字k有些数位变得模糊了,看不清楚数字具体是多少了。易老师需要你帮忙把这k块饼干平分给n个小朋友,易老师保证这盒饼干能平分给n个小朋友。现在你需要计算出k有多少种可能的数值 输入描述:输入包括两行:第一行为盒子上的数值k,模糊的数位用X表示,长度小于18(可能有多个模糊的数位)第二行为小朋友的人数n输出描述:原创 2017-06-03 11:04:04 · 768 阅读 · 0 评论 -
最长上升子序列(dp)
求一个长度为n的最长上升子序列的长度(LIS),即对于任意的i思路:通过dp求解,我们首先定义:dp[i]=以a[i]为末尾的最长上升子序列的长度;则以a[i]结尾的上升子序列是:1)只包含a[i]的子序列2)在满足j这二者之一,即状态转移方程是:dp=max{1,dp[j]+1|j时间复杂度:O(n^2)代码://输入int n;int原创 2017-07-01 15:14:41 · 282 阅读 · 0 评论 -
2017网易春招 双核处理(DP)
一种双核CPU的两个核能够同时的处理任务,现在有n个已知数据量的任务需要交给CPU处理,假设已知CPU的每个核1秒可以处理1kb,每个核同时只能处理一项任务。n个任务可以按照任意顺序放入CPU进行处理,现在需要设计一个方案让CPU处理完这批任务所需的时间最少,求这个最小的时间。 输入描述:输入包括两行:第一行为整数n(1 ≤ n ≤ 50)第二行为n个整数length[i](102原创 2017-05-25 14:53:18 · 427 阅读 · 0 评论 -
2017网易春招 堆砖块(DP)
小易有n块砖块,每一块砖块有一个高度。小易希望利用这些砖块堆砌两座相同高度的塔。为了让问题简单,砖块堆砌就是简单的高度相加,某一块砖只能使用在一座塔中一次。小易现在让能够堆砌出来的两座塔的高度尽量高,小易能否完成呢。 输入描述:输入包括两行:第一行为整数n(1 ≤ n ≤ 50),即一共有n块砖块第二行为n个整数,表示每一块砖块的高度height[i] (1 ≤ height[原创 2017-06-01 14:52:05 · 1335 阅读 · 0 评论 -
V型积木(dp)
Dr.Wu的宝宝1岁了,所以Dr.Wu准备买些积木给宝宝玩,促进孩子大脑的发育。由于宝宝太小,所以他将高低不同的积木摆放的毫无规律(如图A)。然而Dr.Wu发现,如果从当前的积木中抽走一部分(图B,C中虚线的即表示抽走的积木),剩下的积木能够呈现出“V”形,即积木的高度先严格递减,然后严格递增。图B中,需要抽走三个积木,剩下的积木就可以呈现出“V”形,而图C中仅需抽走一根积木。Dr.Wu需原创 2017-07-01 16:58:54 · 927 阅读 · 0 评论 -
最长公共子序列(LCS)
题目:思路:dp[i][j]:=s[1],...,s[i]和t[1],...,t[j]对应的LCS的长度;由此,s[1]...s[t+1]和t[1]...t[j+1]对应的公共子列可能是:1)当s[i+1]=t[j+1]时,在s[1]...s[t]和t[1]...t[j]的公共子列末尾追加上s[i+1]2)s[1]...s[t]和t[1]...t[j+1]的公共子列3)原创 2017-07-12 15:12:52 · 356 阅读 · 0 评论 -
ZOJ1027-Human Gene Functions(dp)
Human Gene FunctionsTime Limit: 2 Seconds Memory Limit: 65536 KBIt is well known that a human gene can be considered as a sequence, consisting of four nucleotides, which are simply deno原创 2017-07-12 16:01:22 · 366 阅读 · 0 评论 -
ZOJ1074-To the Max(dp)
思路:将二维最大子矩阵问题转化为一维最大连续子串和问题;最大连续子串和链接转化方式:原创 2017-07-12 22:38:44 · 184 阅读 · 0 评论 -
收集苹果(dp)
题目:平面上有N*M个格子,每个格子中放着一定数量的苹果。你从左上角的格子开始, 每一步只能向下走或是向右走,每次走到一个格子上就把格子里的苹果收集起来, 这样下去,你最多能收集到多少个苹果。思路:dp[i][j]:=到达第x行第y列的格子的时候,最多收集到的苹果的数量;状态转移方程:dp[i][j] =a[i][j]+max( if(x>0) dp[i-1][j] , if(原创 2017-07-12 23:19:18 · 379 阅读 · 0 评论 -
2015 计蒜之道 初赛 商品推荐走马灯(dp)
有一个新的研究显示,人在看见一系列的图片时,如果它们的排列有一定的轴对称性,则会更为觉得赏心悦目。根据这个特性,作为阿里巴巴旗下重要的电子商务交易平台的淘宝,希望了解商品推荐的图片走马灯现在的赏心悦目情况,以便判断是否之后需要做出调整。例如,当价值分别为 1,2,1 的商品图片排列在一起的时候,人们可以看到它的所有非空区间 [1]、[2]、[1]、[1,2]、[2,1]、[1,2,1] 中有四原创 2017-09-09 11:07:29 · 358 阅读 · 0 评论