动态规划
文章平均质量分 79
Jokercold
提起百倍勇气,用笑脸面对世界。
展开
-
bzoj 3156 防御准备
防御准备DescriptionInput第一行为一个整数N表示战线的总长度。第二行N个整数,第i个整数表示在位置i放置守卫塔的花费Ai。Output共一个整数,表示最小的战线花费值。Sample Input102 3 1 5 4 5 6 3 1 2Sample Output18HINT原创 2017-05-25 20:13:40 · 436 阅读 · 0 评论 -
最长公共上升子序列
最长公共上升子序列 转载 2014年08月13日 16:04:00 标签:最长公共上升子序列 1222 最长公共上升子序列 问题: 给定两个字符串x, y, 求它们公共子序列s, 满足si < sj ( 0 <= i < j < |s|).要求S的长度是所有条件序列中长度最长的. 比较直观的做法(O(n^4))可以仿照最长上升子序列用dp[i][j], 表示以xi, yj结束的公共字串转载 2017-10-21 13:56:27 · 375 阅读 · 0 评论 -
鏖战字符串
鏖战字符串 题目描述 Abwad在nbc即将完成她的程序的时候,急中生智拔掉了她电脑的电源线,争取到了宝贵的时间。作为著名论文《论Ctrl-C与Ctrl-V在信息学竞赛中的应用》的作者,他巧妙地使用了这种上古秘术,顺利扳回一城。 在决胜局中,Abwad决定和nbc鏖战字符串,比的是谁能更快地将一个“量子态的字符串”删除。“量子态的字符串”的每个字符都有一个删除难度dif[i]。“量子态的字符串原创 2017-09-20 14:46:05 · 596 阅读 · 0 评论 -
最优贸易简化版
最优贸易简化版题目描述 C国有n座城市,编号是1到n,编号为i的城市有路到编号为i+1的城市(编号为n的城市没有路到其他的城市)。 C国幅员辽阔,各地的资源分布情况各不相同,这就导致了同一种商品在不同城市的价格不一定相同。但是,同一种商品在同一个城市的买入价和卖出价始终是相同的。 商人阿龙再次来到C国旅游。他还是想贩卖水晶赚取旅费,在某个城市买入,再另一个城市卖出。 他将从编号为a的城市到编原创 2017-06-13 20:23:41 · 964 阅读 · 0 评论 -
pinball
pinball题目描述 A喜欢玩一个叫pinball的游戏。游戏规则如下: Pinball的游戏界面由m+2行、n列组成。第一行在顶端。一个球会从第一行出发,开始垂直下落,A会得到一个积分当他击中一个球的时候。 小天才lyk觉得这太困难了,于是在界面中放入了一些漏斗,一共有m个漏斗分别放在第2~m+1行,第i个漏斗的作用是把经过第i+1行且列数在Ai~Bi之间的球将其移到第Ci列。 但是使用原创 2017-06-13 20:11:28 · 599 阅读 · 0 评论 -
三条最短路
tower题目描述 A去推塔。但是推第n座塔必须先推了第1~n-1座塔。 为了加快速度A召唤出了B和C。求A和他的召唤兽们为了推完所有塔所经过的最短距离。输入 第一行一个数N,代表一共要去多少个城市。 下面N-1 行,对于第 i 行,有 n-i 个数,表示第 i 个城市分别和第i+1, i+2, i+3, ……, N 的距离(距离<=10000)输出 一个数,表示最短距离样例输入 5原创 2017-06-13 19:49:06 · 276 阅读 · 0 评论 -
Flowerpot
Flowerpot题目 此题,他说用线段树,但我发现只要二分答案+two pointers, 二分出答案后,维护区间最大值最小值,来验证答案是否合法。 维护区间最小,就是维护最长不下降子序列。(因为,有比当前小的,直接替代了) 维护区间最大,就是维护最长不上升子序列。(有比当前大的,也直接替代了)原创 2017-06-03 20:59:55 · 525 阅读 · 0 评论 -
括号序列
括号序列 题目描述 定义如下规则序列(字符串): 1.空序列是规则序列; 2.如果S是规则序列,那(S)和[S]也是规则序列; 3.如果A和B都是规则序列,那么AB也是规则序列。 例如,下面的字符串都是规则序列: (), [], (()), ([]), ()[], ()[()] 这几个不是规则序列: (, [, ], )(, ([() 现在,给出一些有’(’ ,原创 2017-06-01 21:16:41 · 651 阅读 · 0 评论 -
乘积最大
乘积最大今年是国际数学联盟确定的“2000——世界数学年”,又恰逢我国著名数学家华罗庚先生诞辰90周年。在华罗庚先生的家乡江苏金坛,组织了一场别开生面的数学智力竞赛的活动,你的一个好朋友XZ也有幸得以参加。活动中,主持人给所有参加活动的选手出了这样一道题目: 设有一个长度N的数字串,要求选手使用K个乘号将它分成K+1个部分,找出一种分法,使得这K+1个部分的乘积能够为最大。 同时,为了帮助选手能原创 2017-06-01 20:37:14 · 349 阅读 · 0 评论 -
低价购买
低价购买题目描述“低价购买”这条建议是在奶牛股票市场取得成功的一半规则。要想被认为是伟大的投资者,你必须遵循以下的问题建议:“低价购买;再低价购买”。每次你购买一支股票,你必须用低于你上次购买它的价格购买它。买的次数越多越好!你的目标是在遵循以上建议的前提下,求你最多能购买股票的次数。你将被给出一段时间内一支股票每天的出售价(216范围内的正整数),你可以选择在哪些天购原创 2017-06-01 19:50:11 · 402 阅读 · 0 评论 -
石子合并
石子合并原创 2017-05-18 21:25:18 · 336 阅读 · 0 评论 -
兔子跳跃之谜下
兔子跳跃之谜下bzoj原创 2017-05-18 21:00:20 · 708 阅读 · 0 评论 -
运动鞋
此题如果去掉至少买一个的条件,就是普通背包--------f[i][j]=f[i-1][j-(付出)]+(收益);发现有k种物品且每种至少买一个,所以自然想到先分类-------f[i][j]表示为前i类花了j的代价的最大收益考虑至少买一个,从前i-1类转移,所以f[i][j]=f[i-1][j-(付出)]+(收益); 在买了一个的基础上,其他的可以随意买,所以f原创 2017-05-14 21:09:09 · 551 阅读 · 0 评论 -
1411矩阵取数问题V3
1411矩阵取数问题V3 给定一个m行n列的矩阵,你可以从任意位置开始取数,到达任意位置都可以结束,每次可以走到的数是当前这个数上下左右的邻居之一,唯一的限制是每个位置只能经过一次,也就是说你的路径不自交。所经过的数的总作为你的得分,求最大的得分。 Input 第一行两个整数m, n (0 < m, n < 10),表示矩阵的行数和列数。 后面m行,每行n个整数表示矩阵里的数,整数范围[-1原创 2017-10-25 18:48:59 · 436 阅读 · 0 评论