随笔分类 -  动态规划——区间DP

摘要:http://www.51nod.com/Challenge/Problem.html#problemId=1092 解决本题的关键是发现插入一个字符相当于删除一个字符 思路一:区间dp dp[i][j]表示s[i…j]最少删除几个字符,使s[i…j]构成回文串 由小区间向大区间扩大计算 如果s[i 阅读全文
posted @ 2021-04-14 20:48 TRTTG 阅读(73) 评论(0) 推荐(0) 编辑
摘要:给定一个由小写字母组成的字符串,输出有多少重复的回文子序列 爆搜代码 阅读全文
posted @ 2018-04-04 22:02 TRTTG 阅读(539) 评论(9) 推荐(0) 编辑
摘要:http://www.lydsy.com/JudgeOnline/problem.php?id=2448 一遍过,嘎嘎嘎嘎嘎嘎嘎嘎嘎嘎嘎嘎,O(∩_∩)O~ 题意是最小化最大值 设计区间dp dp[i][j] 表示在能确定x不在区间[i,j]内,或确定x在区间[i,j]内某个位置的最坏情况下的最小值 阅读全文
posted @ 2018-02-13 10:03 TRTTG 阅读(352) 评论(0) 推荐(1) 编辑
摘要:http://www.lydsy.com/JudgeOnline/problem.php?id=1996 f[i][j][0/1] 表示已经排出队形中的[i,j],最后一个插入的人在[i,j]的i或j 枚举顺序一: 先枚举区间长度,再枚举区间左端点 枚举顺序二: 先倒序枚举区间左端点,再枚举区间右端 阅读全文
posted @ 2018-01-11 08:20 TRTTG 阅读(232) 评论(0) 推荐(0) 编辑
摘要:http://www.lydsy.com/JudgeOnline/problem.php?id=1055 区间DP dp[i][j][k] 表示区间[i,j]能否合成k 1055: [HAOI2008]玩具取名 Description 某人有一套玩具,并想法给玩具命名。首先他选择WING四个字母中的 阅读全文
posted @ 2018-01-07 07:48 TRTTG 阅读(281) 评论(0) 推荐(0) 编辑
摘要:http://www.lydsy.com/JudgeOnline/problem.php?id=1260 区间DP模型 dp[l][r] 表示涂完区间[l,r]所需的最少次数 从小到大们枚举区间[l,r] 如果col[l]==col[r] dp[l][r]=min(dp[l+1][r],dp[l][ 阅读全文
posted @ 2018-01-03 09:06 TRTTG 阅读(389) 评论(1) 推荐(0) 编辑
摘要:http://www.lydsy.com/JudgeOnline/problem.php?id=1261 dp[l][r][dep] 区间[l,r]内的节点,根在dep层的最小代价 枚举根i,dp[l][r][dep]=min(dp[l][i-1][dep+1]+dp[i+1][r][dep]+f[ 阅读全文
posted @ 2018-01-03 08:44 TRTTG 阅读(681) 评论(0) 推荐(0) 编辑
摘要:http://www.lydsy.com/JudgeOnline/problem.php?id=1032 https://www.luogu.org/discuss/show?postid=8416 #include<cstdio> #include<cstring> #include<iostre 阅读全文
posted @ 2017-11-26 14:31 TRTTG 阅读(355) 评论(0) 推荐(0) 编辑
摘要:期望得分:80+30+70=180 实际得分:10+30+70=110 T1 水题(water) Time Limit:1000ms Memory Limit:128MB 题目描述 LYK出了道水题。 这个水题是这样的:有两副牌,每副牌都有n张。 对于第一副牌的每张牌长和宽分别是xi和yi。对于第二 阅读全文
posted @ 2017-10-28 23:18 TRTTG 阅读(696) 评论(0) 推荐(0) 编辑
摘要:卡特兰数 #include<cstdio> #include<cstring> #include<algorithm> using namespace std; int f[1001]; int main() { freopen("stack.in","r",stdin); freopen("sta 阅读全文
posted @ 2017-10-24 22:26 TRTTG 阅读(301) 评论(0) 推荐(0) 编辑
摘要:期望得分:100+30+60=190 实际得分:10+0+55=65 到了233 2是奇数位 或223 第2个2是偶数位就会223 、233 循环 #include<cstdio> #define N 1000001 using namespace std; char s[N+5]; int mai 阅读全文
posted @ 2017-10-22 17:11 TRTTG 阅读(264) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示