
DP
rgnoH
OI弱菜
展开
-
CQOI2017 小Q的棋盘
CQOI2017 NKOI4038 小Q的棋盘问题描述 小Q正在设计一种棋类游戏。在小Q设计的游戏中,棋子可以放在棋盘上的格点中。某些格点之间有连线,棋子只能> 在有连线的格点之间移动。整个棋盘上共有V个格点,编号为0,1,2…,V-1,它们是连通的,也就是说棋子从任意格> 点出发,总能到达所有的格点。小Q在设计棋盘时,还保证棋子从一个格点移动到另外任一格点的路径是唯一的。 小Q现在想知道原创 2017-07-21 20:42:49 · 726 阅读 · 0 评论 -
葡萄 状压DP
葡萄问题描述 葡萄架上有n 串葡萄,每串葡萄都有一个价值。有一只狐狸想偷走一些。 不过她规定,任意连续的k 串葡萄中,最多选b 串,最少选a 串。 现在,狐狸要选出一些葡萄,使得狐狸得到的葡萄的价值和,与剩余葡萄的 价值的和,差值最大。输入格式 第一行四个整数n,k,a,b 一行N 个整数表示每串葡萄的价值输出格式 一个整数表示答案样例输入 2 1 0原创 2017-11-08 10:57:06 · 459 阅读 · 0 评论 -
蒜头君救人 状压DP
蒜头君救人题目描述 蒜头君是一个乐于助人的好孩子,这天他所在的乡村发生了洪水,有多名村民被困于孤岛上,于是蒜头君决定去背他们离开困境,假设蒜头君所在的村子是 n×mn×m 的网格,网格中.号代表平地,#号代表该地已被洪水淹没,A、B……等大写字母表示该地有村民被困,s代表蒜头君的起点,t代表蒜头君的终点。 蒜头君的初始速度为 k 秒一格,他每次可以向上下左右 4 个方向中的一个移动 1原创 2017-11-08 11:37:37 · 452 阅读 · 0 评论 -
经营与开发 DP
问题描述 你驾驶着一台带有钻头(初始能力值w)的飞船,按既定路线依次飞过n个星球。 星球笼统的分为2类:资源型和维修型。(p为钻头当前能力值) 资源型:含矿物质量a[i],若选择开采,则得到a[i]p的金钱,之后钻头损耗k%,即p=p(1-0.01k) 维修型:维护费用b[i],若选择维修,则支付b[i]p的金钱,之后钻头修复c%,即p=p(1+0.01c) 注:原创 2017-10-23 21:45:55 · 358 阅读 · 0 评论 -
TYVJ4869 罪犯分组 状压DP枚举子集
数据范围这么小,很容易考虑到状压DP。预处理出所有情况的罪犯矛盾数并判断哪些状态是不合法的。之后就转换为了一个比较简单的背包DP问题。状态转移方程: f[S]=min(f[i]+1),i为S的子集,且i xor S表示的集合中矛盾数不超过Kf[S]=min(f[i]+1),i为S的子集,且i \ xor\ S表示的集合中矛盾数不超过K问题似乎解决了,但是有一个问题:如何高效枚举S的子集?如果讨论完原创 2017-10-15 21:45:45 · 516 阅读 · 0 评论 -
计蒜客NOIP模拟赛 小区划分
题面数据范围不大,显然的DP模型。状态也很容易定出来:设f[i][j]f[i][j]表示把前i个单元楼划分成j个小区的最大拥挤程度。那么有动规方程:f[i][j]=max(f[k][j−1]+abs((suma[i]−suma[k])−(sumb[i]−sumb[k])))f[i][j]=max(f[k][j-1]+abs((sum_a[i]-sum_a[k])-(sum_b[i]-sum_b[k]原创 2017-10-07 18:24:37 · 328 阅读 · 0 评论 -
小奇的矩阵 DP
小奇的矩阵【题目背景】 小奇总是在数学课上思考奇怪的问题。【问题描述】 给定一个n*m的矩阵,矩阵中的每个元素aij为正整数。 接下来规定 1.合法的路径初始从矩阵左上角出发,每次只能向右或向下走,终点为右下角。 2.路径经过的n+m-1个格子中的元素为A1,A2…A(n+m-1),Aavg为Ai的平均数,路径的V值为(n+m-1)*∑(Ai-Aavg) ^2原创 2017-10-24 21:17:05 · 997 阅读 · 2 评论 -
CodePlus 2017 11 月赛 div2 题解
div2的题目总体上来说比较简单。考试时都想出了正解,但是由于TUOJ考试期间不能提交导致心态爆炸,最后T4没有处理好。最后得分320,rank12,T桖到手。T1 晨跑就是求三个数的最小公倍数。连代码都不想放。T2 汀博尔timber n.木料,木材看到数据范围比较大,容易想到套个logN的复杂度,那么显然二分答案。验证O(n)而且非常简单,只要这一天某个木材超过最低限度就使用它,看最后有没有超过原创 2017-11-26 18:48:49 · 1019 阅读 · 0 评论 -
HDU 6131 Loop nest 状压DP
Loop nestProblem Description There are m sets Pi,Qi,∀i(1≤i≤m),Pi,Qi⊆{1…i−1}. There are nested loops with m layers, and for the jth layer, the loop variable is ij, the lower bound equals max{ik(k...原创 2018-02-13 22:58:12 · 362 阅读 · 0 评论 -
NOI Newnode模拟题 第二题 DP 单调性优化 三分法
第二题【问题描述】 小火车虽然很穷,但是他还是得送礼物给妹子,所以他前往了二次元寻找不需要钱的礼物。小火车准备玩玩二次元的游戏,游戏当然是在一个二维网格中展开的,网格大小是n*m的,某些格子是好的,其余的则是不好的。每次你可以选择最底层(也就是第n层)的某两个相邻的列,并消掉最底下的至多三个格子,并且这两列都得有格子被消掉(也就是L型或者反着的L型),消掉格子以后上面的格子会掉落下来。...原创 2018-03-07 20:33:21 · 591 阅读 · 0 评论 -
独立集 最长上升子序列
NKOJ 3500 独立集输入格式 输入包含两行,第一行为 N, 第二行为 1 到 N 的一个全排列输出格式 输出包含两行,第一行输出最大独立集的大小,第二行从小到大输出一定在最大独立集 的点的编号。 样例输入 3 3 1 2样例输出 2 2 3数据规模 30%的数据满足 N<=16 60%的数据满足 N<=1,000 100%的数据满足原创 2017-10-30 14:53:19 · 288 阅读 · 0 评论 -
浇花 差分数组 区间DP
NKOJ 3051 浇花问题描述 n 个非负整数排成一行,每个数值为Ai,数的位置不可改变。需要把所有的数都恰好等 于h。可进行的操作是:对任意长度的区间[i,j]中的每个数都加1,i 和j 也任选,但要求每 个数只能作为一次区间的起点,也只能作为一次区间的终点。也即是说: 对任意的两个区 间[l1, r1] 和[l2, r2], 要求: l1≠l2 并且r1 ≠ r2.原创 2017-10-05 19:24:44 · 450 阅读 · 0 评论 -
【SDOI2008】Sandy的卡片 DP
NKOJ 2522【SDOI2008】Sandy的卡片问题描述 Sandy和Sue的热衷于收集干脆面中的卡片。 然而,Sue收集卡片是因为卡片上漂亮的人物形象,而Sandy则是为了积攒卡片兑换超炫的人物模型。 每一张卡片都由一些数字进行标记,第i张卡片的序列长度为Mi,要想兑换人物模型,首先必须要集够N张卡片,对于这N张卡片,如果他们都有一个相同的子串长度为k,则可以兑换一个等级为k原创 2017-10-09 21:21:47 · 299 阅读 · 0 评论 -
CQOI2016 手机号码 数位DP
CQOI2016 NKOJ3613 手机号码问题描述 人们选择手机号码时都希望号码好记、吉利。比如号码中含有几位相邻的相同数字、不含谐音不吉利的数字等。手机运营商在发行新号码时也会考虑这些因素,从号段中选取含有某些特征的号码单独出售。为了便于前期规划,运营商希望开发一个工具来自动统计号段中满足特征的号码数量。 工具需要检测的号码特征有两个:号码中要出现至少3个相邻的相同数字,号码中不能原创 2017-07-26 22:19:58 · 541 阅读 · 0 评论 -
2017暑假第二阶段第四场 总结
T1 果冻怪时间限制 1s 空间限制 128MB问题描述 小南和小开在三友路上养了很多只果冻怪。我们可以将三友路想象成一根长度无限的数 轴,在这上面生活着n只果冻怪。每经过一秒,一只果冻怪便会分裂成两只。具体来说,一 只坐标为x的果冻怪,会分裂成两只分别在(x − 1),(x + 1)上的果冻怪,并且原来在x上的果冻怪会消失。 由于生存空间有限,若一个位置上有不少于P只果冻怪,那么会立刻消失 P原创 2017-08-24 15:44:17 · 508 阅读 · 0 评论 -
NOIP 2003 加分二叉树
NKOJ 1044 加分二叉树问题描述 设一个n个节点的二叉树tree的中序遍历为(l,2,3,…,n),其中数字1,2,3,…,n为节点编号。每个节点都有一个分数(均为正整数),记第j个节点的分数为di,tree及它的每个子树都有一个加分,任一棵子树subtree(也包含tree本身)的加分计算方法如下: subtree的左子树的加分× subtree的右子树的加分+subtree的根的原创 2017-08-25 15:59:36 · 336 阅读 · 0 评论 -
2017暑假第二阶段第一场 总结
T1 数三角形问题描述 给出一个正整数n,从1,2,3…..n 中选出三个不同整数,使得以它们为三边长可以组成三角形,问 总共有多少种不同的三角形? 例如,n=5 时有三种:(2,3,4) , (2,4,5) , (3,4,5)输入格式 一个正整数n输出格式 一个整数,表示三角形的个数递推即可。设f[i]表示n为i时的方案总数,那么f[i+1]相比f[i],多出的方案为原创 2017-08-21 15:46:36 · 506 阅读 · 0 评论 -
2017暑假第二阶段第六场 总结
T1 2357 数问题描述 一个数字被称之为 2357 数,当且仅当其所有大于 1 的因子均能被 2/3/5/7 中的某一个整除。对于数字 N,你需要求出不小于 N 的最小 2357 数。输入格式 一个数字 N。输出格式 一个数字表示最小的 2357 数样例输入 209样例输出 210数据范围 对于 30%的数据,N≤5000。 对于 60%的数据,N≤1原创 2017-08-27 16:11:57 · 457 阅读 · 0 评论 -
2017暑假第二阶段第三场 总结
T1 数正方形问题描述 在n * n的点阵中任取4个点,回答: 问题1:这4个点恰好是“正放”的正方形的4个顶点的方案数是多少? 问题2:这4个点恰好是正方形(包括“正放”和“斜放”)的4个顶点的方案数是多少?输入格式 两个整数n和k,n表示点阵的尺寸,k=1表示需要回答问题1,k=2表示需要回答问题2输出格式 一个整数,表示答案。(模1000000007再输出原创 2017-08-23 20:22:55 · 590 阅读 · 0 评论 -
2017暑假第二阶段第七场 总结
T1 最大子段和问题描述 给出一个首尾相连的循环序列,从中找出连续的一段,使得该段中的数和最大输入格式 第一行一个整数 n,表示有 n 个数。( 1<=n<=100000) 第二行有 n 个整数,每个数的绝对值不超过 100000.输出格式 一个整数,表示所求结果样例输入 4 2 -4 1 4样例输出 7正解是用的单调队列优化DP。由于是个环,首先把数组复制原创 2017-08-28 15:39:38 · 369 阅读 · 0 评论 -
2017暑假第二阶段第九场 总结
T1 丢钉子问题描述 学校里一年一度的自行车大赛又开始了!!可是ZL同学却非常不高兴,因为他不会骑自行车!所以他决定干扰这次比赛。他已经了解到了这次参加比赛的m名参赛选手的资料。他决定要进行一次惊天动地的干扰。 我们假设比赛场地是一个从起点处向右和向前无限延伸的跑道。编号为1到m的参赛队员从左到右并列排列。从比赛开始后的第1秒末,第2秒末,第3秒末,第4秒末……第m秒末他分别会投一枚钉子到原创 2017-08-30 18:31:52 · 432 阅读 · 0 评论 -
送外卖 拓扑排序+状压DP+最短路
题面1.注意到K=20,这样的数据范围让人想到状压DP,而且允许进行K次Dijkstra算法。2.题目中“公司规定了其中某些小区送餐的先后顺序,比如i小区的餐必须在给j小区送餐前送到”释放出明显的拓扑排序信号。3.设f[i][j]f[i][j]表示在i表示的状态下终点为j时的最小路程和,容易写出状态转移方程:f[en][j]=min{f[st][k]+dis[k][j]}f[en][j]=min\{原创 2017-09-10 16:49:47 · 1089 阅读 · 0 评论 -
BZOJ 3934 CQOI 2015 标识设计 插头DP
题面:http://www.lydsy.com/JudgeOnline/problem.php?id=3934很容易想到插头DP。显然只需要记录插头是否存在,而不需要记录插头的连通性。把一个L看做是“一个只含下插头的格子——它下面的若干(可以为零)个含上下插头的格子——含一个上插头、一个右插头的格子——它右边的若干(可以为零)个含左右插头的格子——它右边一个含一个左插头的格子”这五部分...原创 2018-02-25 19:54:56 · 425 阅读 · 0 评论