摘要: 题意 输入一串数字代表一串山坡的高度,如果当前山的高度比它两边的都要高,我们可以在上面盖一栋房子。可以用挖掘机挖山坡使其高度降低,一小时可以向下挖掉高度1(可以减到负数)。现在要分别找到想建i=1~n/2个房子,对每一个i输出需要挖掘的时间(n:5e3) 挺恶心的一道线性dp,这个用不着区间dp,因 阅读全文
posted @ 2020-04-12 18:30 poozhai 阅读(172) 评论(0) 推荐(0) 编辑
摘要: 大意 给出一堆点,任选三点连成三角形,以三个顶点为圆心做半径相同的圆,圆之间不能相交,但可以相切或相离 求圆的最大半径 最大圆的半径,就是三角形最小的那条边的一半。否则超过一半的话,从另一个顶点再做一个圆,一定会相交 题意很简单,关键是优化时间效率。 我们先用 n^2 的时间计算出每条边的距离,把他 阅读全文
posted @ 2020-04-11 20:23 poozhai 阅读(159) 评论(0) 推荐(0) 编辑
摘要: 题意: 一个人要打开或者用炸弹砸开所有的门,每个门里面有一些钥匙,一个钥匙对应一个门,有了一个门的钥匙就能打开相应的门,告诉每个门里面有哪些门的钥匙,问用的炸弹为期望值。 分析: 期望值 = 每个门用炸弹炸开的概率之和 而 每个门用炸弹炸开的概率 = 1 / 到达这个门的方案数, 因为炸开门的方案只 阅读全文
posted @ 2020-04-11 17:59 poozhai 阅读(87) 评论(0) 推荐(0) 编辑
摘要: 一道很迷惑的题目。 英文题面就不粘了,题目大意就是 给定一串0-1序列,定义两种操作: 操作一:选取一连续子串倒置。 操作二:选取一连续子串把进行01互换(取反)。并给出操作一和操作二的代价,分别为x和y。操作到最后要把串变成只含1的串,问最小的操作代价 第一反应是区间dp, 枚举每个01区间, 发 阅读全文
posted @ 2020-04-11 12:28 poozhai 阅读(184) 评论(0) 推荐(0) 编辑
摘要: 石子合并(一) 最基础的区间dp 有N堆石子排成一排(n<=100),现要将石子有次序地合并成一堆,规定每次只能选相邻的两堆合并成一堆,并将新的一堆的石子数,记为改次合并的得分,编一程序,由文件读入堆数n及每堆石子数(<=200); 选择一种合并石子的方案,使得做n-1次合并,得分的总和最少/最多。 阅读全文
posted @ 2020-04-09 12:53 poozhai 阅读(250) 评论(0) 推荐(0) 编辑
摘要: In an n x n chessboard, Prince and Princess plays a game. The squares in the chessboard are numbered 1, 2, 3 ... n*n, as shown below:Prince stands in 阅读全文
posted @ 2020-04-08 21:21 poozhai 阅读(279) 评论(0) 推荐(0) 编辑
摘要: 树形dp入门经典题 大意就是学每门课可以获得相应的学分 sc[ i ],但学一门课必须先学习他的先修课 给定能学的课程数,求能得的最大学分。 很容易想象出一个树形结构 设 dp [ u ][ j ] 表示以 u 为根节点选 j 门课的学大得分。 接下来我们可以选择学习 u 的子节点, 也可以继续选择 阅读全文
posted @ 2020-04-08 07:55 poozhai 阅读(176) 评论(0) 推荐(0) 编辑
摘要: 题目链接:https://www.luogu.com.cn/problem/P5774 1.题目大意: 有1-n的村庄,每个村庄在不治疗的情况下每天死 a[ i ] 人,到达一个村庄可以治疗或跳过, 若跳过, 再回头时只能一直走回这个村庄, 然后才能重新往前走,求最少死亡人数。 2.题目分析 我们定 阅读全文
posted @ 2020-04-08 07:33 poozhai 阅读(202) 评论(0) 推荐(0) 编辑
摘要: 一堆n根木棍。每个棒的长度和重量是预先已知的。这些木棒将由木工机械一一加工。机器需要准备一些时间(称为准备时间)来准备处理木棍。设置时间与清洁操作以及更换机器中的工具和形状有关。木工机械的准备时间如下: (a)第一个木棍的准备时间为1分钟。 (b)在处理长度为l和重量为w的棒之后,如果l <= l' 阅读全文
posted @ 2020-04-07 12:04 poozhai 阅读(189) 评论(0) 推荐(2) 编辑
摘要: 设一个n个节点的二叉树tree的中序遍历为(l, 2, 3, …, n),其中数字 1, 2, 3, …, n为节点编号。每个节点都有一个分数(均为正整数),记第j个节点的分数为,tree及它的每个子树都有一个加分,任一棵子树subtree(也包含tree本身)的加分计算方法如下: subtree的 阅读全文
posted @ 2020-04-05 18:25 poozhai 阅读(180) 评论(0) 推荐(0) 编辑