
DP
Nino_7
这个作者很懒,什么都没留下…
展开
-
【DP】 CodeForces - 766C Mahmoud and a Message
题意:给定一个长度不超过1000的由小写英文字母组成的字符串。将字符串分解,要求每个小写字母i所在子串长度均不超过a[i]。输出符合要求的方案数,最大子串长度,最少子串个数。很明显的dp题。。。比赛时没有想到如何处理可行方案数。。。核心在于对于i-j段如果是合法的子串,则dp[j]+=dp[i];题解:用dp[i]记录到当前位置的可行方案,dp[i]可以由dp[j]的状态加上一段合法的长度为j-i...转载 2018-02-11 13:16:54 · 192 阅读 · 0 评论 -
EOJ Monthly 2018.2 (Good bye 2017) A2. 坑爹的售票机【完全背包】
题目:http://acm.ecnu.edu.cn/contest/51/problem/A2/因为所给纸币面值可以用来贪心,所以先用贪心算法得出买n张票的所需最少纸币数。接着,因为没有规定总共可以买几次票,就是一个完全背包问题。背包容量为买票数目,每种买票方式为一个物品,方式所花纸币数目为物品价值,所买票数为物品重量。但由于题中所给数据过大,无法创造如此庞大的dp[数组],故我们采用类似于滚动数...转载 2018-02-14 01:23:55 · 487 阅读 · 0 评论 -
区间DP+平行四边形优化分析
区间DP模版:for (int len = 1; len < n; len++) { //操作区间的长度 for (int i = 0, j = len; j <= n; i++, j++) { //始末 //检查是否匹配(非必须) for (int s = i; s < j; s++) { ...转载 2018-03-16 22:51:17 · 946 阅读 · 0 评论