动态规划
sdau20163940
努力学习,天天向上!
展开
-
最长上升子序列(O(nlogn))
最长上升子序列的解法(O(nlogn)) 实现原创 2022-03-01 12:45:24 · 805 阅读 · 0 评论 -
命运
Problem Description穿过幽谷意味着离大魔王lemon已经无限接近了!可谁能想到,yifenfei在斩杀了一些虾兵蟹将后,却再次面临命运大迷宫的考验,这是魔王lemon设下的又一个机关。要知道,不论何人,若在迷宫中被困1小时以上,则必死无疑!可怜的yifenfei为了去救MM,义无返顾地跳进了迷宫。让我们一起帮帮执着的他吧!命运大迷宫可以看成是一个两维的方格阵列原创 2017-07-21 18:02:06 · 371 阅读 · 0 评论 -
Monkey and Banana
Problem DescriptionA group of researchers are designing an experiment to test the IQ of a monkey. They will hang a banana at the roof of a building, and at the mean time, provide the monkey with som原创 2017-07-23 14:36:20 · 229 阅读 · 0 评论 -
Robberies
Problem DescriptionThe aspiring Roy the Robber has seen a lot of American movies, and knows that the bad guys usually gets caught in the end, often because they become too greedy. He has decided to原创 2017-07-23 16:29:40 · 244 阅读 · 0 评论 -
piggy-bank
Problem DescriptionBefore ACM can do anything, a budget must be prepared and the necessary financial support obtained. The main income for this action comes from Irreversibly Bound Money (IBM). The原创 2017-07-25 11:16:17 · 190 阅读 · 0 评论 -
Cow Bowling(动态规划)
Cow BowlingTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 19855 Accepted: 13164DescriptionThe cows don't use actual bowling balls when they go bowling.原创 2017-08-10 19:13:36 · 220 阅读 · 0 评论 -
最大子矩阵和
Problem DescriptionGiven a two-dimensional array of positive and negative integers, a sub-rectangle is any contiguous sub-array of size 1 x 1 or greater located within the whole array. The sum of a原创 2017-07-26 18:27:53 · 173 阅读 · 0 评论 -
Largest Rectangle in a Histogram (单调队列||dp)
Largest Rectangle in a Histogram Time Limit : 2000/1000ms (Java/Other) Memory Limit : 131072/65536K (Java/Other)Total Submission(s) : 47 Accepted Submission(s) : 14Problem DescriptionA his原创 2017-08-11 20:11:43 · 204 阅读 · 0 评论 -
Find the nondecreasing subsequences(数状数组+离散化+dp)
Problem BTime Limit : 10000/5000ms (Java/Other) Memory Limit : 32768/32768K (Java/Other)Total Submission(s) : 70 Accepted Submission(s) : 17Problem DescriptionHow many nondecreasin原创 2017-08-23 21:37:58 · 225 阅读 · 0 评论 -
小明系列问题——小明序列(线段树+dp)
小明系列问题——小明序列Time Limit : 3000/1000ms (Java/Other) Memory Limit : 65535/32768K (Java/Other)Total Submission(s) : 31 Accepted Submission(s) : 14Problem Description 大家都知道小明最喜欢研究跟序列有关原创 2017-10-06 21:30:59 · 913 阅读 · 0 评论 -
方伯伯的玉米田(数状数组+dp)
方伯伯在自己的农田边散步,他突然发现田里的一排玉米非常的不美。这排玉米一共有N株,它们的高度参差不齐。方伯伯认为单调不下降序列很美,所以他决定先把一些玉米拔高,再把破坏美感的玉米拔除掉,使得剩下的玉米的高度构成一个单调不下降序列。方伯伯可以选择一个区间,把这个区间的玉米全部拔高1单位高度,他可以进行最多K次这样的操作。拔玉米则可以随意选择一个集合的玉米拔掉。问能最多剩多少株玉米,来原创 2017-10-01 21:32:06 · 249 阅读 · 0 评论 -
问题 I: 不一样的走楼梯(简单dp)
问题 I: 不一样的走楼梯时间限制: 1 Sec 内存限制: 128 MB提交: 884 解决: 243状态题目描述 有一个楼梯共M级,刚开始你在第零级,若你每次可以跨小于等于M的任意级(也就是说,你可以跨1级,2级....M级),那么要走上第M级,共有多少种走法呢?结果可能有点大,输出对1000000009取余后的结果~原创 2017-12-26 21:41:54 · 459 阅读 · 0 评论 -
矩形嵌套(记忆化搜索)
描述有n个矩形,每个矩形可以用a,b来描述,表示长和宽。矩形X(a,b)可以嵌套在矩形Y(c,d)中当且仅当a<c,b<d或者b<c,a<d(相当于旋转X90度)。例如(1,5)可以嵌套在(6,2)内,但不能嵌套在(3,4)中。你的任务是选出尽可能多的矩形排成一行,使得除最后一个外,每一个矩形都可以嵌套在下一个矩形内。输入第一行是一个正正数N(0每组测试数据的第一行是一原创 2018-01-02 22:25:55 · 310 阅读 · 0 评论 -
P1880 [NOI1995]石子合并(区间dp)
题目描述在一个圆形操场的四周摆放N堆石子,现要将石子有次序地合并成一堆.规定每次只能选相邻的2堆合并成新的一堆,并将新的一堆的石子数,记为该次合并的得分。试设计出1个算法,计算出将N堆石子合并成1堆的最小得分和最大得分.输入输出格式输入格式:数据的第1行试正整数N,1≤N≤100,表示有N堆石子.第2行有N个数,分别表示每堆石子的个数.输原创 2018-01-05 12:33:20 · 576 阅读 · 1 评论 -
Hello 2018(B、C)
B. Christmas Sprucetime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputConsider a rooted tree. A rooted tree ha原创 2018-01-09 10:44:40 · 585 阅读 · 0 评论 -
20180520-DP2 E - Lighting System Design
地址:点击打开链接DP思维题,算是比较简单的题目,一开始读题意感觉到很难懂,读了好久,现在简单描述一下题意。有一些灯泡,每个灯有四个值V 该灯泡的电压,可以买电压高的灯泡代替电压低的灯泡,电压两两不同K 发电机价格,只有有一台,就可以供应无限多个该电压的灯泡C 灯泡价格L 这个电压的灯泡需要多少只问买完所有要求的灯泡的最小花费思路:注意,因为是高电压的点灯可以替换低电压,这种情况还需要买一个...原创 2018-05-20 21:21:04 · 186 阅读 · 0 评论 -
#1038 : 01背包 - #1043 : 完全背包
#1038 : 01背包时间限制:20000ms单点时限:1000ms内存限制:256MB描述且说上一周的故事里,小Hi和小Ho费劲心思终于拿到了茫茫多的奖券!而现在,终于到了小Ho领取奖励的时刻了!小Ho现在手上有M张奖券,而奖品区有N件奖品,分别标号为1到N,其中第i件奖品需要need(i)张奖券进行兑换,同时也只能兑换一次,为了使得辛苦得到的奖券不白白浪费,小Ho给每...原创 2019-03-23 21:35:09 · 189 阅读 · 0 评论 -
humble numbers
Problem DescriptionA number whose only prime factors are 2,3,5 or 7 is called a humble number. The sequence 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 12, 14, 15, 16, 18, 20, 21, 24, 25, 27, ... shows the first原创 2017-07-17 16:37:33 · 170 阅读 · 0 评论 -
免费馅饼
Problem Description都说天上不会掉馅饼,但有一天gameboy正走在回家的小径上,忽然天上掉下大把大把的馅饼。说来gameboy的人品实在是太好了,这馅饼别处都不掉,就掉落在他身旁的10米范围内。馅饼如果掉在了地上当然就不能吃了,所以gameboy马上卸下身上的背包去接。但由于小径两侧都不能站人,所以他只能在小径上接。由于gameboy平时老呆在房间里玩游戏,虽然在游戏中是个原创 2017-07-17 16:34:42 · 166 阅读 · 0 评论 -
I NEED A OFFER!
Problem DescriptionSpeakless很早就想出国,现在他已经考完了所有需要的考试,准备了所有要准备的材料,于是,便需要去申请学校了。要申请国外的任何大学,你都要交纳一定的申请费用,这可是很惊人的。Speakless没有多少钱,总共只攒了n万美元。他将在m个学校中选择若干的(当然要在他的经济承受范围内)。每个学校都有不同的申请费用a(万美元),并且Speakless估计了他得原创 2017-07-20 19:17:36 · 227 阅读 · 0 评论 -
13:最大上升子序列和
描述一个数的序列bi,当b1 你的任务,就是对于给定的序列,求出最大上升子序列和。注意,最长的上升子序列的和不一定是最大的,比如序列(100, 1, 2, 3)的最大上升子序列和为100,而最长上升子序列为(1, 2, 3)输入输入的第一行是序列的长度N (1 输出最大上升子序列和样例输入71 7 3 5 9 4 8样例输出18原创 2017-04-09 12:43:01 · 276 阅读 · 0 评论 -
最大子矩阵
描述已知矩阵的大小定义为矩阵中所有元素的和。给定一个矩阵,你的任务是找到最大的非空(大小至少是1 * 1)子矩阵。比如,如下4 * 4的矩阵0 -2 -7 09 2 -6 2-4 1 -4 1-1 8 0 -2的最大子矩阵是9 2-4 1-1 8这个子矩阵的大小是15。输入输入是一个N * N的矩阵。输入的原创 2017-03-31 00:00:06 · 371 阅读 · 0 评论 -
04 公共子序列
描述我们称序列Z = 是序列X = 的子序列当且仅当存在 严格上升 的序列,使得对j = 1, 2, ... ,k, 有xij = zj。比如Z = 是X = 的子序列。现在给出两个序列X和Y,你的任务是找到X和Y的最大公共子序列,也就是说要找到一个最长的序列Z,使得Z既是X的子序列也是Y的子序列。输入输入包括多组测试数据。每组数据包括一行,给出两个长度不超过20原创 2017-04-10 23:54:06 · 354 阅读 · 0 评论 -
05:吃糖果
描述名名的妈妈从外地出差回来,带了一盒好吃又精美的巧克力给名名(盒内共有 N 块巧克力,20 > N >0)。妈妈告诉名名每天可以吃一块或者两块巧克力。假设名名每天都吃巧克力,问名名共有多少种不同的吃完巧克力的方案。例如:如果N=1,则名名第1天就吃掉它,共有1种方案;如果N=2,则名名可以第1天吃1块,第2天吃1块,也可以第1天吃2块,共有2种方案;如果N=3,则名名第1天可以吃1块,剩2块原创 2017-04-11 00:07:13 · 278 阅读 · 0 评论 -
26:滑雪
描述Michael喜欢滑雪百这并不奇怪, 因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你。Michael想知道载一个区域中最长的滑坡。区域由一个二维数组给出。数组的每个数字代表点的高度。下面是一个例子 1 2 3 4 516 17 18 19 615 24 25 20 714 23 22 21 813 12原创 2017-04-03 09:45:16 · 220 阅读 · 0 评论 -
16:踩方格
思路:此题直觉觉得是规律题,然后慢慢写出了几种情况,f[0]=1,f[1]=3,f[2]=7,f[3]=17;然后发现了规律即f[i]=f[i-1]*2+f[i-1],然后便试了一下,结果就AC了,此题还可以使用递归的方法,f(int n,int x,int y),n步数在不断减小,如果路过则将值置为1,否则为0如果n=0,则返回1,否则 num+=fun(n-1,i+dx[r],j+dy原创 2017-04-13 23:21:22 · 496 阅读 · 0 评论 -
10:数字组合
描述有n个正整数,找出其中和为t(t也是正整数)的可能的组合方式。如:n=5,5个数分别为1,2,3,4,5,t=5;那么可能的组合有5=1+4和5=2+3和5=5三种组合方式。输入输入的第一行是两个正整数n和t,用空格隔开,其中1接下来的一行是n个正整数,用空格隔开。输出和为t的不同的组合方式的数目。样例输入5 51 2 3 4 5样例输出3原创 2017-04-13 23:36:33 · 897 阅读 · 0 评论 -
3-采药
描述辰辰是个很有潜能、天资聪颖的孩子,他的梦想是称为世界上最伟大的医师。为此,他想拜附近最有威望的医师为师。医师为了判断他的资质,给他出了一个难题。医师把他带到个到处都是草药的山洞里对他说:“孩子,这个山洞里有一些不同的草药,采每一株都需要一些时间,每一株也有它自身的价值。我会给你一段时间,在这段时间里,你可以采到一些草药。如果你是一个聪明的孩子,你应该可以让采到的草药的总价值最大。”原创 2017-04-05 23:52:39 · 243 阅读 · 0 评论 -
09:移动路线
描述×桌子上有一个m行n列的方格矩阵,将每个方格用坐标表示,行坐标从下到上依次递增,列坐标从左至右依次递增,左下角方格的坐标为(1,1),则右上角方格的坐标为(m,n)。小明是个调皮的孩子,一天他捉来一只蚂蚁,不小心把蚂蚁的右脚弄伤了,于是蚂蚁只能向上或向右移动。小明把这只蚂蚁放在左下角的方格中,蚂蚁从左下角的方格中移动到右上角的方格中,每步移动一个方格。蚂蚁始终在方格矩阵内移动,请计原创 2017-04-15 09:23:25 · 467 阅读 · 0 评论 -
06:登山
描述五一到了,PKU-ACM队组织大家去登山观光,队员们发现山上一个有N个景点,并且决定按照顺序来浏览这些景点,即每次所浏览景点的编号都要大于前一个浏览景点的编号。同时队员们还有另一个登山习惯,就是不连续浏览海拔相同的两个景点,并且一旦开始下山,就不再向上走了。队员们希望在满足上面条件的同时,尽可能多的浏览景点,你能帮他们找出最多可能浏览的景点数么?输入Line 1: N原创 2017-04-15 09:34:24 · 293 阅读 · 0 评论 -
21:三角形最佳路径问题
描述如下所示的由正整数数字构成的三角形: 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 从三角形的顶部到底部有很多条不同的路径。对于每条路径,把路径上面的数加起来可以得到一个和,和最大的路径称为最佳路径。你的任务就是求出最佳路径上的数字之和。 注意:路径上的每一步只能从一个数走到下一层上和它最近的下边(正下方)的数或者右边(右下方)的数。原创 2017-04-16 16:55:24 · 404 阅读 · 0 评论 -
14:怪盗基德的滑翔翼
思路:用两个数组记录数据,一个是按原先位置,另一个是按原位置的反序,分别求他们俩的最长上升子序列(其实是让求最长下降但反过来即为最长上升),然后取其中一个大的即可!代码:原创 2017-04-16 17:03:14 · 349 阅读 · 0 评论 -
18:买书
思路:背包问题,类似于课堂上我们所讲那个求幸福值的题,f[i]+=f[i-a[j];注意细节方面处理:原创 2017-04-17 00:20:04 · 168 阅读 · 0 评论 -
23:大盗阿福
大盗阿福 查看 提交 统计 提问 总时间限制: 1000ms 内存限制: 65536kB 描述 阿福是一名经验丰富的大盗。趁着月黑风高,阿福打算今晚洗劫一条街上的店铺。这条街上一共有 N 家店铺,每家店中都有一些现金。阿福事先调查得知,只有当他同时洗劫了两家相邻的店铺时,街上的报警系统才会启动,然后警察就会蜂拥而至。作为一向谨慎作案的大盗,阿福不愿意冒着被警察追捕的原创 2017-04-17 00:32:37 · 571 阅读 · 0 评论 -
鸣人的影分身
描述在火影忍者的世界里,令敌人捉摸不透是非常关键的。我们的主角漩涡鸣人所拥有的一个招数——多重影分身之术——就是一个很好的例子。影分身是由鸣人身体的查克拉能量制造的,使用的查克拉越多,制造出的影分身越强。针对不同的作战情况,鸣人可以选择制造出各种强度的影分身,有的用来佯攻,有的用来发起致命一击。那么问题来了,假设鸣人的查克拉能量为M,他影分身的个数为N,那么制造影分原创 2017-04-17 00:47:04 · 387 阅读 · 0 评论 -
最大连续子序列
Total Submission(s) : 2 Accepted Submission(s) : 2Problem Description给定K个整数的序列{ N1, N2, ..., NK },其任意连续子序列可表示为{ Ni, Ni+1, ..., Nj },其中 1 <= i <= j <= K。最大连续子序列是所有连续子序列中元素和最大的一个, 例如给定序列{原创 2017-07-16 18:08:27 · 175 阅读 · 0 评论 -
01:最长上升子序列
描述一个数的序列bi,当b1 序列中最长的长度是4,比如子序列(1, 3, 5, 8).你的任务,就是对于给定的序列,求出最长上升子序列的长度。输入输入的第一行是序列的长度N (1 输出最长上升子序列的长度。样例输入71 7 3 5 9 4 8样例输出4解题思路:将大问题分解成小问题,即求以a[k]为结尾的最长上升序列,此题可以不原创 2017-03-27 23:22:38 · 341 阅读 · 0 评论