Infiniti

   :: 首页  :: 新随笔  ::  ::  :: 管理

随笔分类 -  线性递推DP

摘要:P2733 家的范围 Home on the Range 思路 :转化为以每个点为右下角的 最大正方形的边长 阅读全文
posted @ 2019-01-22 11:20 自由缚 阅读(261) 评论(0) 推荐(0)

摘要:链接:https://nanti.jisuanke.com/t/35618 题意: 如果一个数大于等于 1010 且任意连续两位都是质数,那么就称之为 Wish 数。当然,第一个 Wish 数是 1111。 比如 9797,111111,131131,119119 都是 Wish 数,而 1212, 阅读全文
posted @ 2019-01-20 14:26 自由缚 阅读(332) 评论(0) 推荐(0)

摘要:HDU - 2476 思路:分解问题,先考虑从一个空串染色成 B串的最小花费 ,区间DP可以解决这个问题 具体的就是,当 str [ l ] = = str [ r ]时 dp [ L ] [ R ] = min (dp [ L + 1] [ R ],dp [ L ] [ R-1 ] ) 其他情况可 阅读全文
posted @ 2019-01-15 19:51 自由缚 阅读(189) 评论(0) 推荐(0)

摘要:筱玛的字符串 思路 :dp [ i ] [ j ] [ 3 ] 分别代表到第 i 位时 左括号比右括号多 j ,后面有三个状态 分别表示当前位置 S3的字符 是正在反转的,还是 反转完成的,还是没有反转的, 根据提议要求 反转的只能是一段连续区间,然后转移即可。 注意 反转完成之后 不能再开始一段新 阅读全文
posted @ 2019-01-13 17:22 自由缚 阅读(241) 评论(0) 推荐(0)

摘要:P2347 砝码称重 DP做法 : 转化为 01背包。 进行方案数 更新。最后统计种类。 #include<bits/stdc++.h> using namespace std; #define maxn 1234 int n,k,dp[maxn],len,sum,ans; int a[11]= { 阅读全文
posted @ 2019-01-13 00:18 自由缚 阅读(208) 评论(0) 推荐(0)

摘要:背单词 思路 :dp[ i ] [ 0 ]表示 第i 位放的元音 dp[ i ] [ 1 ]表示 第i 位放的辅音 ,cnt [ i ]含义是 长度为 i 的方案数。 转移 :dp[ i ] [ 0 ] 由 上一个长度的所有方案数 也就是 cnt[ i-1 ] *5 转移而来 。 同理 dp[ i  阅读全文
posted @ 2019-01-13 00:17 自由缚 阅读(170) 评论(0) 推荐(0)

摘要:F - Tmutarakan Exams 题意 : 从 < = S 的 数 中 选 出 K 个 不 同 的 数 并 且 gcd > 1 。求方案数。 思路 :记 录 一 下 每 个 数 的 倍 数 vector 存 储 ,最后从 2 开始 遍历 一遍每个数 ,从 他的倍数中 挑选 k个 组合数求解。 阅读全文
posted @ 2019-01-13 00:14 自由缚 阅读(213) 评论(0) 推荐(0)

摘要:HDU - 1028 step 1:初始化第一个多项式 也就是 由 1的各种方案 组 成 的多项式 初始化系数为 1。临时区 temp初始化 为 0 step 2:遍历后续的n - 1 个 多项式 ,第二重 for j 代 表 的 存 储 结 果 的 多 项 式的次数,k 代表 当前 第 i 的 多 阅读全文
posted @ 2019-01-13 00:09 自由缚 阅读(228) 评论(0) 推荐(0)

摘要:Misunderstood … Missing 记忆深刻......打铁没做出来的题 题意 : 打怪,有 A 的攻击力,有 D 的成长,初始均为 0,有 n 轮。 同时有三个数组 a[1:n],b[1:n],c[1:n] 对于每一轮: 首先,攻击力永久性成长 A=A+D;然后,在下面三个选择中选择一 阅读全文
posted @ 2019-01-12 17:23 自由缚 阅读(222) 评论(0) 推荐(0)

摘要:思路 :题意描述我也很绝望 。先说一下题意 : 给定长度为n数组a [ ],求a[ ] 的一个最大子序列(可以不连续),使得b [ i ]& b [ i - 1 ] ! = 0.求最大的 b数组的长度 题解:显然是DP,状态转移方程显然是dp[ i ] = m a x { dp [ k ] + 1 阅读全文
posted @ 2019-01-09 17:41 自由缚 阅读(94) 评论(0) 推荐(0)

摘要:dp[i]=min(dp[j]+(sum[i]-sum[j]+i-j-1-L)^2) (j=f[j](显然) 证明完毕 2.求斜率方程 因为dp[k]+(f[i]-f[k]-c)^2 using namespace std; #define ll long long #define maxn 56789 ll n,l,s[maxn],dp[maxn]; int head,tail,q[ma... 阅读全文
posted @ 2019-01-09 15:16 自由缚 阅读(125) 评论(0) 推荐(0)

摘要:思路 : 1,用一个单调队列来维护解集。 2,假设队列中从头到尾已经有元素a b c。那么当d要入队的时候,我们维护队列的下凸性质, 即如果g[d,c]<g[c,b],那么就将c点删除。直到找到g[d,x]>=g[x,y]为止,并将d点加入在该位置中。 3,求解时候,从队头开始,如果已有元素a b 阅读全文
posted @ 2019-01-09 11:40 自由缚 阅读(220) 评论(0) 推荐(0)

摘要:就 是 要 我 们 从 n k 件 物 品 里 面 选 出 若 干 件,使 得 其 数 量 模 k 等 于 r 的 方 案 数 。 dp方程 f [ i , j ] 表示前 i 件物品拿了若干件使得其数量模 k 等 于 j 的 方 案 数。 非常明显的 i 与 i - 1递推的DP, 可以转化推矩阵 阅读全文
posted @ 2019-01-08 20:42 自由缚 阅读(127) 评论(0) 推荐(0)