随笔分类 -  DP

摘要:题意:我们现在位于(0,0)处,目标是走到(K,0)处。每一次我们都可以从(x,y)走到(x+1,y-1)或者(x+1,y)或者(x+1,y+1)三个位子之一。现在一共有N段线段,每条线段都是平行于X轴的。我们如果此时x是在这段线段之内的话,我们此时走到的点(x,y)需要满足0<=y<=Ci.现在保 阅读全文
posted @ 2017-11-07 17:58 NINGLONG 阅读(233) 评论(0) 推荐(0)
摘要:题意:给你n个数,问有多少种排列方式使得任意两个相邻的数的乘积都不是完全平方数 我好弱,被组合和数论吊着打。。。 首先我们可以把每个数中固有的完全平方数给分离出来,那么答案其实就只与处理后的序列相关。 考虑把相同的数分为一类,设dp[i][k]表示前i组数分为k类的方案数,于是用隔板法搞搞就有: $ 阅读全文
posted @ 2017-10-23 12:07 NINGLONG 阅读(152) 评论(0) 推荐(0)
摘要:题意:定义Round Number为二进制表示下0的个数大于等于1的个数的数。求[l,r]中有多少圆环数 我们把二进制位用一颗01二叉树表示,如下: 我们依据二进制位来遍历这颗线段树,如果当前高度对应的位为1,则遍历左右两颗子树,否则遍历左子树。dfs的过程中我们可以用记忆化来减少枚举状态,同时注意 阅读全文
posted @ 2017-10-18 21:29 NINGLONG 阅读(165) 评论(0) 推荐(1)
摘要:题目描述 小强喜欢数列。有一天,他心血来潮,写下了三个长度均为n的数列。 阿米巴也很喜欢数列。但是他只喜欢其中一种,波动数列。 阿米巴把他的喜好告诉了小强。小强便打算找出这三个数列内的最长波动数列。 也就是说,如果我们将三个数列记做a[n][3],他必须要构造一个二元组序列:<p[i], q[i]> 阅读全文
posted @ 2017-10-10 19:11 NINGLONG 阅读(185) 评论(0) 推荐(0)
摘要:题意:有三种颜色的岛屿各a,b,c座,你可以在上面建桥。联通的点必须满足以下条件:1.颜色不同。2.颜色相同且联通的两个点之间的最短路径为3 其实之用考虑两种颜色的即可,状态转移方程也不难推出:F[i][j]=F[i-1][j]+j*F[i-1][j-1]。答案就是F[a][b]*F[a][c]*F 阅读全文
posted @ 2017-10-09 18:29 NINGLONG 阅读(137) 评论(0) 推荐(0)
摘要:石子合并 有N堆石子排成一排,每堆石子有一定的数量。现要将N堆石子并成为一堆。合并的过程只能每次将相邻的两堆石子堆成一堆,每次合并花费的代价为这两堆石子的和,经过N-1次合并后成为一堆。求出总的代价最小值。 石子合并是一道十分经典的问题。注意到石子的合并可以当做区间的合并,显而易见的,我们有如下状态 阅读全文
posted @ 2017-10-03 23:11 NINGLONG 阅读(4598) 评论(0) 推荐(1)
摘要:看数据范围,果断状压。真是比愤怒的小鸟还智障。。。。。 阅读全文
posted @ 2017-09-21 14:34 NINGLONG 阅读(261) 评论(0) 推荐(0)