摘要:题目链接:http://codeforces.com/contest/699/problem/C题解:1.可知每天有三个状态:1.contest ,2.gym,3.rest。2.所以设dp[i][j](i:1~n,j:1~3)为第i天进行j活动的最小休息天数。3.状态...
阅读全文
摘要:题目链接: https://vjudge.net/problem/UVA-1025题解:详情请看紫书P267。 与其说是DP题,我觉得更像是模拟题,特别是用记忆化搜索写。递推:#include #include #include #include #include #...
阅读全文
摘要:题目链接: https://scut.online/p/125 题目描述 bxbx有一个长度一个字符串SS,bxbx可以对其进行若干次操作。 每次操作可以删掉一个长度为k(1 \leq k \leq n)k(1≤k≤n)的连续回文子串,bxbx获得a_kak的愉悦值。 一个字符串是回文串当且仅
阅读全文
摘要:题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=37 题解: 一开始想从两边向中间添加字符,发现这样不是最优的。因为加入字符之后,这些原本存在的字符是离散的,所以就不能用顺序的方法去添加。 正确做法是将字符串逆过来,与原字符串求最大公共子序
阅读全文
摘要:题目链接:http://acm.csu.edu.cn/csuoj/problemset/problem?pid=1529 题解: 一个加强版的最大连续和子序列,序列可以从末尾元素转到首元素。 分两种情况: 1.最大连续和不需要尾接首,直接dp出以a[i]为结尾的最大连续和ma[i]。 2.最大连续和
阅读全文
摘要:题目链接:http://codeforces.com/gym/101147/problem/H题解:单纯的三维DP。可用递推或记忆化搜索实现。学习:开始时用记忆化搜索写,dp[]初始化为0,结果一直走不出循环。后来发现:即使被搜过的位置,其值也可以是0,当再一次访问这...
阅读全文
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5965 题解: 1. 用a[]数组记录第二行的数字,用dp[]记录没一列放的地雷数。如果第一列的地雷数dp[1]已知,那么第二列的地雷数dp[2]可以确定了(因为a[1] = dp[0] + dp[1]
阅读全文