DP
YuYaoHeKai
一个OIer!
展开
-
导弹拦截
题目描述 某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统。但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意 的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭。由于该系统还在试用阶段,所以只有一套系统,因此有可能不能拦截所 有的导弹。 输入导弹一次飞来的高度(雷达给出的高度不大于30000的正整数)。计算这套系统最多能拦截多少导弹。 输入 n颗原创 2017-05-25 20:16:37 · 348 阅读 · 0 评论 -
YYHS1619(tyvj 1050)
时间限制: 1 Sec 内存限制: 128 MB 题目描述 一个字符串A的子串被定义成从A中顺次选出若干个字符构成的串。如A=“cdaad” ,顺次选1,3,5个字符就构成子串” cad” ,现给定两个字符串,求它们的最长共公子串。输入 第一行两个字符串用空格分开。输出 最长子串的长度。样例输入 abccd aecd 样例输出 3 提示 两个串的长度均小于2000我们令两个串为s原创 2017-06-01 18:43:00 · 382 阅读 · 0 评论 -
BZOJ4518: [Sdoi2016]征途
DescriptionPine开始了从S地到T地的征途。 从S地到T地的路可以划分成n段,相邻两段路的分界点设有休息站。 Pine计划用m天到达T地。除第m天外,每一天晚上Pine都必须在休息站过夜。所以,一段路必须在同一天中走完。 Pine希望每一天走的路长度尽可能相近,所以他希望每一天走的路的长度的方差尽可能小。 帮助Pine求出最小方差是多少。 设方差是v,可以证明,v×m^2是一个原创 2017-05-26 13:55:45 · 299 阅读 · 0 评论 -
运动鞋
时间限制: 1 Sec 内存限制: 128 MB 题目描述 经过几个月的艰苦学习,Iserlohn终于赢得了全额奖学金。作为一个运动鞋狂热爱好者,他决定用所有的钱在运动鞋商店进行消费。 有一些球鞋Iserlohn要收集,如Air Jordan 和 Nike Pro。而每个品牌已发布各种产品。由于,Iserlohn绝对是一个运动鞋狂热,他意欲购买每个品牌至少有一个产品。 虽然每个产品的都原创 2017-06-01 19:34:17 · 330 阅读 · 0 评论 -
低价购买
时间限制: 1 Sec 内存限制: 128 MB 题目描述 “低价购买”这条建议是在奶牛股票市场取得成功的一半规则。要想被认为是伟大的投资者,你必须遵循以下的问题建议:“低价购买;再低价购买”。每次你购买一支股票,你必须用低于你上次购买它的价格购买它。买的次数越多越好!你的目标是在遵循以上建议的前提下,求你最多能购买股票的次数。你将被给出一段时间内一支股票每天的出售价(216范围内的正整数),原创 2017-06-01 20:03:14 · 289 阅读 · 0 评论 -
石子合并(NOI1995)
题目描述 在操场上沿一直线排列着 n堆石子。现要将石子有次序地合并成一堆。规定每次只能选相邻的两堆石子合并成新的一堆, 并将新的一堆石子数记为该次合并的得分。允许在第一次合并前对调一次相邻两堆石子的次序。 计算在上述条件下将n堆石子合并成一堆的最小得分和初次交换的位置。 输入 输入数据共有二行,其中,第1行是石子堆数n≤100; 第2行是顺序排列的各堆石子数(≤20),每两个数之间用空格原创 2017-06-01 20:33:08 · 1725 阅读 · 0 评论 -
TyvjP1045 最大的算式
时间限制: 1 Sec 内存限制: 128 MB 题目描述 题目很简单,给出N个数字,不改变它们的相对位置,在中间加入K个乘号和N-K-1个加号,(括号随便加)使最终结果尽量大。因为乘号和加号一共就是N-1个了,所以恰好每两个相邻数字之间都有一个符号。例如: N=5, K=2,5个数字分别为1、2、3、4、5,可以加成: 1*2*(3+4+5)=24 1*(2+3)(4+5)=45 (1*2原创 2017-06-01 20:45:15 · 323 阅读 · 0 评论 -
TyvjP1047乘积最大
时间限制: 1 Sec 内存限制: 128 MB 题目描述 今年是国际数学联盟确定的“2000——世界数学年”,又恰逢我国著名数学家华罗庚先生诞辰90周年。在华罗庚先生的家乡江苏金坛,组织了一场别开生面的数学智力竞赛的活动,你的一个好朋友XZ也有幸得以参加。活动中,主持人给所有参加活动的选手出了这样一道题目: 设有一个长度N的数字串,要求选手使用K个乘号将它分成K+1个部分,找出一种分法,使得原创 2017-06-01 20:53:40 · 326 阅读 · 0 评论 -
括号序列
时间限制: 1 Sec 内存限制: 128 MB 题目描述 定义如下规则序列(字符串): 1.空序列是规则序列; 2.如果S是规则序列,那(S)和[S]也是规则序列; 3.如果A和B都是规则序列,那么AB也是规则序列。 例如,下面的字符串都是规则序列: (), [], (()), ([]), ()[], ()[()] 这几个不是规则序列: (, [, ], )(,原创 2017-06-02 13:58:41 · 732 阅读 · 0 评论 -
Tyvj P1034 尼克的任务
题目描述 尼克每天上班之前都连接上英特网,接收他的上司发来的邮件,这些邮件包含了尼克主管的部门当天要完成的全部任务,每个任务由一个开始时刻与一个持续时间构成。 尼克的一个工作日为N分钟,从第一分钟开始到第N分钟结束。当尼克到达单位后他就开始干活。如果在同一时刻有多个任务需要完成,尼克可以任选其中的一个来做,而其余的则由他的同事完成,反之如果只有一个任务,则该任务必需由尼克去写成,假如某些任务开始时原创 2017-06-02 14:27:23 · 363 阅读 · 0 评论 -
详解斜率优化
这里讲一下斜率优化,其实也是给自己复习一下。 我们从一道例题开始:BZOJ1597: [Usaco2008 Mar]土地购买Description农夫John准备扩大他的农场,他正在考虑N (1 <= N <= 50,000) 块长方形的土地. 每块土地的长宽满足(1 <= 宽 <= 1,000,000; 1 <= 长 <= 1,000,000). 每块土地的价格是它的面积,但FJ可以同时购买多快原创 2017-05-22 18:17:26 · 753 阅读 · 0 评论 -
铺砖块
题目描述 现有n*m的一块地板,需要用1*2的砖块去铺满,中间不能留有空隙。问这样方案有多少种 输入 输入n,m(1<=n, m<=11) 有多组输入数据,以m=n=0结束 输出 输出铺砖块的方案数样例输入 1 2 1 3 1 4 2 2 2 3 2 4 2 11 4 11 0 0 样例输出 1 0 1 2 3 5 144 51205此题可以用状压DP来原创 2017-05-20 14:45:21 · 1957 阅读 · 0 评论 -
导游
题目描述 宁波市的中小学生们在镇海中学参加程序设计比赛之余,热情的主办方邀请同学们参观镇海中学内的各处景点,已知镇海中学内共有n处景点。现在有n位该校的学生志愿承担导游和讲解任务。每个学生志愿者对各个景点的熟悉程度是不同的,如何将n位导游分配至n处景点,使得总的熟悉程度最大呢?要求每个景点处都有一个学生导游。输入 有若干行:第一行只有一个正整数n,表示有n个景点和n个学生导游。第二行至第n+1行原创 2017-05-20 08:30:02 · 847 阅读 · 0 评论 -
0/1背包
题目描述 一个旅行者有一个最多能装m公斤物品的背包,现在有n件物品,它们的重量分别是w1,w2,…,wn,它们的价值分别为c1,c2,…,cn。若每件物品只有一件,求旅行者能获得的最大总价值。 输入 第一行:两个整数,m(背包容量,m<=200)和n(物品数量,n<=30)。 第二~n+1行:每行两个整数wi,ci,表示每个物品的重量和价值。 输出一个数据,表示最大总价值。 样例输入原创 2017-05-25 20:25:46 · 513 阅读 · 0 评论 -
友好城市
问题 B: 友好城市 时间限制: 1 Sec 内存限制: 128 MB 提交: 32 解决: 26 [提交][状态][讨论版] 题目描述 Palmia国有一条横贯东西的大河,河有笔直的南北两岸,岸上各有位置不同的N个城市。北岸的每个城市有且仅有一个友好城市在南岸,而且不同城市的友好城市不相同。 每对友好城市都向政府申请在河上开辟一条直线航道连接两个城市,但是由于河上雾太大,政府决定避原创 2017-05-16 08:36:24 · 632 阅读 · 0 评论 -
Tyvj P1013 找啊找啊找GF
题目描述 ” 找啊找啊找GF,找到一个好GF,吃顿饭啊拉拉手,你是我的好GF.再见.” ” 诶,别再见啊…” 七夕…七夕…七夕这个日子,对于sqybi这种单身的菜鸟来说是多么的痛苦…虽然他听着这首叫做” 找啊找啊找GF” 的歌,他还是很痛苦.为了避免这种痛苦,sqybi决定要给自己找点事情干.他去找到了七夕模拟赛的负责人zmc MM,让她给自己一个出题的任务.经过几天的死缠烂打,zmc MM终原创 2017-05-16 08:57:35 · 688 阅读 · 0 评论 -
BZOJ3675: [Apio2014]序列分割
Description小H最近迷上了一个分隔序列的游戏。在这个游戏里,小H需要将一个长度为n的非负整数序列分割成k+1个非空的子序列。为了得到k+1个子序列,小H需要重复k次以下的步骤: 1.小H首先选择一个长度超过1的序列(一开始小H只有一个长度为n的序列——也就是一开始得到的整个序列); 2.选择一个位置,并通过这个位置将这个序列分割成连续的两个非空的新序列。 每次进行上述步骤之后,小H将原创 2017-05-23 20:19:27 · 310 阅读 · 0 评论 -
胖男孩
时间限制: 1 Sec 内存限制: 128 MB 题目描述 麦克正如我们所知的已快乐地结婚,在上个月他胖了70磅。因为手指上的脂肪过多,使他连给他最亲密的朋友斯拉夫克写一个电子邮件都很困难。 每晚麦克都详细地描述那一天他所吃的所有东西,但有时当他只想按一次某键时往往会按了不止一次,并且他的胖手指还会碰到他不想要按的键,麦克也知道自己的手指有问题,因此他在打字的时候很小心,以确保每打一个想要原创 2017-05-17 21:20:05 · 1251 阅读 · 1 评论 -
最大的算式
题目描述 题目很简单,给出N个数字,不改变它们的相对位置,在中间加入K个乘号和N-K-1个加号,(括号随便加)使最终结果尽量大。因为乘号和加号一共就是N-1个了,所以恰好每两个相邻数字之间都有一个符号。例如: N=5, K=2,5个数字分别为1、2、3、4、5,可以加成: 1*2*(3+4+5)=24 1*(2+3)(4+5)=45 (1*2+3)(4+5)=45 ……输入 输入文件共有二行,原创 2017-05-18 15:00:41 · 319 阅读 · 0 评论 -
小明的喷漆计划
时间限制: 5 Sec 内存限制: 128 MB 题目描述 小明极其喜欢涂鸦,总是在墙上涂上各种颜色的漆。现在小明得到一个任务,需要喷涂一段空白围墙,且单位长度内的颜色都是相同的。小明有一种喷涂工具,它可以给任意长度的一段墙面涂上任意颜色的漆,这样的操作计为一次操作。小明要完成这个任务,又想使得操作次数尽量少,就请你帮他解决这个问题吧。输入 有多组输入数据。 每组包含一个长度不超过100原创 2017-05-18 20:25:06 · 579 阅读 · 0 评论 -
兔子跳跃之谜下(BZOJ2454 RabbitPuzzle(BZOJ中不是多组数据))
题目描述 小生和小森在玩兔子之谜游戏。有三只兔子排成一排。知道每只兔子的初始位置,以及三个兔窝的位置。 游戏的规则是,重复以下步骤k次:选择两个不同的兔子A和B,分别位于a和b。A可以跳过B到达2*b-a的点: 跳跃是不允许其他小兔子已经在点2*b-a的位置上: 跳跃也不允许一次跳过一个以上的兔子: 现在小生和小森想要知道,k次操作之后,能否让所有兔子都分别跳到一个兔窝里面。注意,第i个兔子并不一原创 2017-05-18 21:19:15 · 846 阅读 · 0 评论 -
天上掉Pizza
题目描述 明明喜欢Pizza,但总是缺钱。有一天,他在报纸上阅读,他最喜爱的比萨饼店��必胜客,正在对大批新Pizza运行的促销。促销的办法是:在购买一些Pizza后,可能得到一些优惠券,可以对另一些Pizza进行打折,更令人惊喜的是这些优惠券可以结合起来。但是,有一个限制,Pizza必须一个接一个买,而后得到的优惠券也不可能追溯前面已经买过的Pizza。明明想尝试若干新品Pizza,可又没有充足原创 2017-05-19 14:09:37 · 663 阅读 · 0 评论 -
炮兵阵地
题目描述 司令部的将军们打算在N*M的网格地图上部署他们的炮兵部队。一个N*M的地图由N行M列组成,地图的每一格可能是山地(用“H” 表示),也可能是平原(用“P”表示),如下图。在每一格平原地形上最多可以布置一支炮兵部队(山地上不能够部署炮兵部队);一支炮兵部队在地图上的攻击范围如图中黑色区域所示: 如果在地图中的灰色所标识的平原上部署一支炮兵部队,则图中的黑色的网格表示它能够攻击到的区域原创 2017-05-19 14:27:19 · 489 阅读 · 0 评论 -
稀有矿井
题目描述 XYZ公司已在沿太平洋东海岸位于不同地区的几个岛屿发现了5种稀有的矿藏。该公司认为,这将是一个获利最好的机会。然而,由于金融危机,该公司并没有足够的人手和金钱在所有岛屿上建立矿田。因此,公司委员会选择了一些有较高的矿石储量岛屿,并派出一名调查员对这些岛屿制作了岛上的矿石分布调查。调查结果显示,每个岛上有许多连接在一起的村庄。由于耗费时间,调查员并没有记录的地图中的所有路径。只是记下了一条原创 2017-05-19 17:52:18 · 591 阅读 · 0 评论 -
加分二叉树
时间限制: 1 Sec 内存限制: 128 MB 题目描述 设一个n个节点的二叉树tree的中序遍历为(l,2,3,…,n),其中数字1,2,3,…,n为节点编号。每个节点都有一个分数(均为正整数),记第j个节点的分数为di,tree及它的每个子树都有一个加分,任一棵子树subtree(也包含tree本身)的加分计算方法如下: subtree的左子树的加分× subtree的右子树的加分+原创 2017-06-02 14:17:32 · 1951 阅读 · 0 评论