随笔分类 - DP
    
    
    
    1
    
    
    
摘要:题目链接:传送门 题目大意:长度为n的key数组与value数组,若相邻的key互斥,则可以删去这两个数同时获得对应的两 个value值,问最多能获得多少 题目思路:区间DP 闲谈: 这个题一开始没有做出来,找了下原因,是自己思维太局限(刷题太少),始终想怎样去维护相 邻这个条件,删去数之后怎么来拼
        阅读全文
                
摘要:题目链接:传送门 题目大意:有一个 3*n 的矩阵,每个格子里有一个数,你可以选择相邻的两个格子合并成一个,并且权值变为两数乘积,若一个数未合并,权值变为0,求最后权值总和最大值。 题目思路:以 2^3 状态压缩。
        阅读全文
                
摘要:题目链接:传送门 题目大意:略 题目思路:DP 先预处理,分别以每个字母为中心处理能形成的回文串,再以两个字母为中心处理能形成的回文串。 然后 dp[i] 表示1~i 能形成的数目最少的回文串。 转移方程:if(vis[j][i]==1&&dp[i]>dp[j]+1)dp[i]=dp[j]+1;
        阅读全文
                
摘要:题目链接:传送门 题目大意:有 n 组任务,m 个体力,每组任务有 k 个,分类为 f,每个任务花费 x 体力,得到 y 开心值,求最大开心值,若不能完成输出-1 分类为 0:这一组中的 k 个任务至少选择一个。 分类为 1:这一组中的 k 个任务最多选择一个。 分类为 2:这一组中的 k 个任务随
        阅读全文
                
摘要:for 所有的组k for v=V..0 for 所有的i属于组k f[v]=max{f[v],f[v-c[i]]+w[i]}
        阅读全文
                
摘要:题目思路:动态规划 n^3 dp[i][j] 表示前 i 匹马分成 j 堆总的忧愁度。
        阅读全文
                
摘要:题目链接:传送门 题目大意:略。。 题目思路:其实单就这道题来说,一个主件最多两个附件,且附件不再包含附件,所以很简单,但是如果主件的附件无限制,附件也可包含无限制的附件,应该怎么做? 首先推荐一篇论文 徐持衡的《浅谈几类背包题》,里面有详细的讲解,这一类树形依赖背包问题最终都能优化到 n*c 复杂
        阅读全文
                
摘要:题目链接:传送门 题目大意:略; 题目思路:DP思想 读入数据后,从后向前遍历,假如我们是要找一个长度为n的以1开头的数字串的所有序列,那么可以将它表示为1+(任意数开头的长度为n-1的序列) 然后我们要看序列中哪些子串没有出现过,也就是(任意数开头的长度为n-1的序列)中没有出现的子串,用dp数组
        阅读全文
                
摘要:题目链接:传送门 题目大意:给你一个背包体积大小为n,有m个物品,任选物品放入背包使背包剩余体积最少。 题目思路:转换为01背包求解,物品体积和价值等价,问题要使剩余空间最少,就可以转换为价值最大
        阅读全文
                
摘要:题目链接:传送门 题目大意:中文题,略 题目思路:区间DP 这个题是问需要添加多少个括号使之成为合法括号序列,那么我们可以先求有多少合法的括号匹配,然后用字符串长度减去匹配的括号数就行 状态转移方程主要是对于我们枚举的区间 dp[i][j],如果 i 和 j 处的括号能够匹配,则dp[i][j]=d
        阅读全文
                
摘要:题目链接:传送门 题目大意:要参加聚会,对应聚会要穿对应衣服,衣服可以套着穿,也可以脱下来,但脱下来之后不能再穿,问参加完所有聚会至少需要几件衣服? 题目思路:区间DP 一开始自己没有想出来状态转移方程,但是想到了左右区间如果边界相等的时候衣服数目应该-1,可以少穿一件。其实拓展一点就是更新 方程的
        阅读全文
                
摘要:题目链接:传送门 题目大意:给你n个点,n-1条边连接所有点构成一棵树,1是树根,有m次询问,对于每次询问的点x,在x及x的子树中找出一个点,使删去这个点,所得包含元素最多的联通分块 所含有的点的个数<=原x及x子树的点之和的1/2。输出这个点。 题目思路:比赛时想了一种方法,递归求每个点的连通度然
        阅读全文
                
摘要:题目链接:传送门 题目大意:给你两个长度均小于等于1000的字符串,你要在第一个串中找k个连续的子串,并且这些字串在第二个字符串中均出现且顺序相同,问这些字串最大的长度和。 题目思路:自己不会做,参考了大神的思路。 这个题相当于是最长公共子序列的拓展,我们用一个四维数组来转移状态,一二维表示比较第一
        阅读全文
                
摘要:题目链接:传送门 题目大意:有n个人决斗(n<=18),每两个人之间都有一定几率杀死对方,一次进行一次决斗,胜利者成为擂主继续接受决斗直到只剩下一个人,你是一号,问你最大有多大几率存活到最后。 题目思路:看到n<=18一般都能想到状态压缩DP,但是当时并没有想到怎么转移状态,下来补题发现了一个好博客
        阅读全文
                
摘要:题目链接:传送门 题目大意:给你一副n*m大小的图,'D'表示墙,'F'表示起点,'S'表示空地,'G'表示能源站,'Y'表示开关,一开始机器人处在'F'并有一个初始能量,每走一步会消耗一格能量 机器人需要在能量耗尽前经过所有'Y'至少一次,其中经过'G'可补满能量回初始值但每个'G'只能补一次,问
        阅读全文
                
摘要:题目链接:传送门 题目大意:用1*2大小的砖块去铺满n*m大小的地面,有多少种方案 题目思路:因为1<=n,m<=11,并且砖块是1*2,故可以用二进制思想,也就是状态压缩DP,其中矩阵中为0的元素表示当前位置竖着放一块砖,而连着 两个1表示横着放一块砖(状态压缩真的很奇妙)
        阅读全文
                
摘要:题目链接:传送门 题目思路:状态压缩DP(详见注释)
        阅读全文
                
摘要:题目链接:传送门 题目思路:并查集加分组背包
        阅读全文
                
摘要:题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=110977#problem/E 题目大意:略 题目思路:数据范围很小,可以搜索,但是如果数据范围较大则只能DP 用二维数组表示状态dp[i][j]表示扫描到第i个字符时有j个'('
        阅读全文
                
摘要:题目链接:http://codevs.cn/problem/1135/ 题目大意:中文题。。。就不解释了 题目思路:看了其他巨巨的blog写的,dp思路 原文地址:传送门 今天又重做了一遍,有了自己的思路,而且感觉比较清晰 第三次解题,这次有较大优化且更易理解
        阅读全文
                
    
    
    
    1
    
    
    
	 
                    
                     
                    
                 
                    
                
 
         浙公网安备 33010602011771号
浙公网安备 33010602011771号