
dp
SD_Stjean
这个作者很懒,什么都没留下…
展开
-
Hdu 1904 LCIS (dp)
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5904题目大意: 给定两个串a,b,长度分别为n与m,求两个串的最长公共上升子序列,且子序列的值连续 n,m≤100000 a[i],b[i]≤1000000n,m\leq100000 \space \space a[i],b[i]\leq1000000分析: 直接做显然不好做,选择dp[i]原创 2017-07-15 17:43:31 · 380 阅读 · 0 评论 -
Hdu 3709 - Balanced Number
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=3709题目大意: 如果一个数,指定某一个数位为轴,左右两边数位和轴的距离定义为数位上数字与数位离轴所在数位的距离的乘积,如果轴左右两边数位的距离平衡,则是一个Balanced Number,求给定的[l,r][l,r]区间内有多少个这样的数分析: 显然是数位DP,由于每一位都可以是数轴,所以枚举轴原创 2017-08-09 15:11:25 · 322 阅读 · 0 评论 -
ZOJ - 3329 One Person Game (概率dp)
题目链接: https://vjudge.net/contest/170340#problem/C题目大意: 有三个骰子,分别为k1,k2,k3k1,k2,k3面,同时,存在a,b,ca,b,c,当三个骰子的点数恰好依次是a,b,ca,b,c时,得分归零,否则得到三个骰子点数总和的分,求得分大于n的期望轮数是多少分析: 概率正推,期望逆推,如果没有归零的条件,显然可以用dp[i]表示当前得分为原创 2017-07-15 18:15:36 · 471 阅读 · 0 评论 -
Poj 3744-Scout YYF I (概率dp+矩阵优化)
题目链接: http://poj.org/problem?id=3744题目大意: 一个人,一开始处于位置1,在n个位置上有地雷,不能接触,每次人有pp概率向前走一步,有1−p1-p概率向前跳两步,请问安全走过雷区的概率是多少,地雷位置x∈[1,100000000]x\in[1, 100000000]分析: dp[i]表示走到i处的概率的话,可以很快推出 dp[i]=p∗dp[i−1]+(1原创 2017-07-18 15:28:04 · 298 阅读 · 0 评论 -
Hdu 2089 - 不要62 (数位dp,暴力)
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=2089题目大意: 找出区间[n,m][n,m]内不含子串62以及4的数字个数分析: 找不含4的数字直接在向下层dp时遇到i==4i==4的情况跳过即可,对于不含62的情况,加一个参数prepre,记录之前一个数位的情况,若之前为6,且当前要放2,则跳过,按模板dp即可这题的数据量很小,所以直接暴力原创 2017-07-20 23:27:39 · 384 阅读 · 0 评论 -
Hdu 3555 - Bomb (数位dp)
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=3555题目大意: 给定一个NN,找出1−N1-N间含有子串49的数字个数分析: 这个和不要62类似,但是略有不同,现在找的是含有49的数,所以一样记一个参数pre,代表前一个数位的值,然后记一个sta,这个和不要62中的sta有些不同,有三重状态sta = 0前一个数位不是6sta = 1前一原创 2017-07-20 23:36:07 · 350 阅读 · 0 评论 -
Hdu 2859 - Phalanx (基础dp)
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=2859题目大意: 给定一个字符方阵,求最大的一个子方阵的大小,使得其以副对角线为轴完全对称分析: 直接从上至下O(n2)O(n^2)遍历,对dp[i][j]dp[i][j],查看位置(i,j)(i,j)上方和右方的总匹配数cntcnt(不包括自身),若大于dp[i−1][j−1]dp[i-1][j原创 2017-07-16 21:14:42 · 792 阅读 · 0 评论 -
Hdu 1078 - FatMouse and Cheese (基础dp)
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1078题目大意: 有一只老鼠,起始点在(0,0),起始获得一个权值,每次可以水平或垂直的至多走k步,获得该处的权值,且每次获得的权值必须比上一次的大,求最大能获得的总权值是多少分析: 起点固定在(0,0),所以可以选dp[0][0]为dp终点,一开始以为是两点之间曼哈顿距离在k之内可达,后面一直W原创 2017-07-16 21:07:33 · 364 阅读 · 0 评论 -
Hdu 1024 Max Sum Plus Plus(基础DP)
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1024题目大意: 给定n个数,找出m段连续序列和的最大值,序列之间不可相交分析: 一开始并没有什么思路,后来看了一下kuangbin的题解,发现转移式其实就是 dp[i][j]=max(dp[i][j−1],max(dp[i−1][k],i−1≤k≤j−1))+a[j]dp[i][j] = \原创 2017-07-15 22:38:48 · 335 阅读 · 0 评论 -
Hdu-1025 Constructing Roads In JGShining's Kingdom (LIS)
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1025题目大意: 每个偏僻城市可以接受繁荣城市的援助,但是相互之间的援助不能交差, 如图所示的援助是非法的分析: 显然是直接做一个LIS,最长上升子序列,但是这题的数据量有些大,直接n2n^2dp是过不去的,所以需要优化成nlognnlogn,看刘汝佳的代码比较清楚,g[i]表示长度为i的子序列原创 2017-07-15 17:49:46 · 294 阅读 · 0 评论 -
Hdu 6060 - RXD and dividing (dfs)
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=6060题目大意: 一颗以结点11为根的树,对2−n2-n的结点作一个划分,但至多使用k个集合,对每个分块产生的集合中加入根节点1,然后计算集合内结点互相可达最少需要的权值的和(非最小生成树,可能需要经过其他结点),求权值和的最大可能值分析: 若要使权值和最大,考虑每一条边的贡献次数,如果从父亲向下原创 2017-08-04 16:00:22 · 363 阅读 · 0 评论