随笔分类 - 动态规划---线性dp
摘要:题目:https://www.luogu.org/problemnew/show/P2051 题意:n*m的格子里放炮,使他们不能互相攻击。 如果两个炮在同一行同一列并且中间还有一个棋子的话就可以攻击。问有多少种放炮的方案。 思路:首先根据规则,可以推出任意的行和列中炮的个数都不能超过2个。 可以尝
阅读全文
摘要:题目:https://www.luogu.org/problemnew/show/P2577 题意:n个人每个人有一个打饭时间和吃饭时间,将他们分成两个队伍。每个人打到饭之后就马上去吃饭。问怎么安排可以让总体的吃饭时间最短。 思路:首先贪心还是很好想的。某个队伍的总吃饭时间实际上是打饭结束+吃饭时间
阅读全文
摘要:题目:https://www.luogu.org/problemnew/show/P1373 题意: 有一个n*m的地图,每个点上有一个数值。两个人在任一点开始任一点结束,只能往右或往下走,轮流收集数值。 超过k+1时会清零。问使得他们最后收集到的数值相等的方案数。 思路: 每次状态数一多再牵扯到方
阅读全文
摘要:题目:https://www.luogu.org/problemnew/show/P1156 题意: 每一个垃圾投放时间是t,可以堆的高度是h,如果吃掉可以增加的生命值是f。 给定g个垃圾,初始生命值是10,要求如果要爬出深度为d的井的最早时间是多少。如果爬不出去,最多的生存时间是多少。 思路: 有
阅读全文
摘要:题目:https://www.luogu.org/problemnew/show/P1052 题意: 青蛙要从0跳到超过$l$的地方,每一次可以跳$s$到$t$之间的任意数。 在河中有m个石头,要求在尽量不要跳到石头的情况下,青蛙最少可能会跳到多少颗石头。 思路: 刚开始很自然的想到就是用dp[i]
阅读全文
摘要:题目:https://www.luogu.org/problemnew/show/P1417 题意: 一道菜有$a,b,c$三个值。烧一道菜的时间是$c$。得到的价值是,$a-t*b$其中$t$是菜完成的时间。 问用总时间t可以烧多少菜使得总价值最大。 思路: 很容易可以想到背包,一道菜做或是不做。
阅读全文
摘要:题目:https://www.luogu.org/problemnew/show/P1006 题意: 给定一个m*n的矩阵,从(1,1)向下或向右走到(m,n)之后向上或向左走回(1,1),要求路径中每个点都不重复。 问使得权值和最大的路径的权值是多少。 思路: 这道题要学会把问题转化成,找两条从(
阅读全文
摘要:题目:https://www.luogu.org/problemnew/show/P1282 题意: 给定n个牌,每个牌有一个上点数和下点数。可以通过旋转改变交换上下点数。 问使得上点数之和和下点数之和的差的绝对值最小的最少旋转方法。 思路: 新增一个牌,对于点数差的贡献是+a-b或-a+b 所以很
阅读全文
摘要:题目:https://www.luogu.org/problemnew/show/P1280 题意: 给定k个任务的开始时间和持续时间要求在n时间内完成。问如何安排工作使得休息时间最多。 思路: 用dp[i]表示i~n的时间内的最长休息时间。 每一个时间点只有两种可能:有工作or没有工作在此时开始
阅读全文
摘要:题目:https://www.luogu.org/problemnew/show/P1140 题意: 给定两串基因串(只包含ATCG),在其中插入任意个‘-’使得他们匹配。(所以一共是5种字符) 这5种字符两两之间有一个匹配数值,要求使这两个字符串的匹配值之和最大。 思路: dp[i][j]表示匹配
阅读全文
摘要:题目:https://www.luogu.org/problemnew/show/P1020 题意: 给定一些导弹的高度。 一个导弹系统只能拦截高度不增的一系列导弹,问如果只有一个系统最多能拦截多少导弹。 再问,如果要拦截所有导弹最少需要多少系统。 思路: 对于第一个问题其实就是找整个序列中的最长不
阅读全文
摘要:题目:https://www.luogu.org/problemnew/show/P1115 题意: 求给定数组的最大区间和。 思路: $dp[i][0]$表示以1~i的数组,不选i的最大字段和。$dp[i][1]$表示1~i的数组,选了i 的最大字段和。 显然有 $dp[i+1][0] = max
阅读全文
摘要:问题描述 试题编号: 201312-4 试题名称: 有趣的数 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 我们把一个数称为有趣的,当且仅当: 1. 它的数字只包含0, 1, 2, 3,且这四个数字都出现过至少一次。 2. 所有的0都出现在所有的1之前,而所有的2都出现在所
阅读全文
摘要:题目:https://pintia.cn/problem-sets/994805342720868352/problems/994805402305150976 题意: n个硬币,每一个有一个特有的价值,一个硬币只有一个,要求选取一些硬币使得他们的价值刚好是m 输出字典序最小的方案。 思路: 最近好
阅读全文
摘要:题目:https://www.luogu.org/problemnew/show/P1216 题意: 给定一个三角形。从顶走到底,问路径上的数字之和最大是多少。 走的时候可以往左下(实际上纵坐标不变)或是往右下(纵坐标+1) 思路: 用$dp[i][j]$表示从$(1,1)$走到$(i,j)$的最大
阅读全文
摘要:题目:https://www.luogu.org/problemnew/show/P1057 题意: n个人围成一个圈,传球只能传给左边或是右边。 从第一个人开始传起,经过m次之后回到第一个人的传球方案有多少种。 思路: 发现有的时候dp的转移方程可以通过写递归得到。把递归给变成dp 用$dp[i]
阅读全文
摘要:A Birthday http://codeforces.com/contest/1068/problem/A 题意: 有n种硬币,m个人。m个人要给Ivan送硬币,每个人送的硬币都要互不相同但数量一样。Ivan现在已经有k种了,具体哪k种不知道。现在要求朋友们送的硬币至少有l种是IVan没有的。
阅读全文
摘要:题目描述 最近 \text{lxhgww}lxhgww 又迷上了投资股票,通过一段时间的观察和学习,他总结出了股票行情的一些规律。 通过一段时间的观察,\text{lxhgww}lxhgww 预测到了未来 TT 天内某只股票的走势,第 ii 天的股票买入价为每股 AP_iAPi,第 ii 天的股票
阅读全文
摘要:题目描述 有一个a*b的整数组成的矩阵,现请你从中找出一个n*n的正方形区域,使得该区域所有数中的最大值和最小值的差最小。 输入输出格式 输入格式: 第一行为3个整数,分别表示a,b,n的值 第二行至第a+1行每行为b个非负整数,表示矩阵中相应位置上的数。每行相邻两数之间用一空格分隔。 输出格式:
阅读全文
摘要:Fence Time Limit: 1000MS Memory Limit: 30000K Total Submissions: 6122 Accepted: 1972 Description A team of k (1 <= K <= 100) workers should paint a fe
阅读全文