随笔分类 -  -----动态规划 9.其他

摘要:题目链接:hdu 4055 Number String 题意: 给你一个长度为n的指定的升降序列,问有多少种排列,符合这样的序列。 题解: 训练赛的时候没想出来,大概这种排列的dp需要转换一下思维吧。 考虑dp[i][j]表示前i个数只用1~i,结尾为j。 然后就有 如果s[i - 1]是' I ' 阅读全文
posted @ 2017-10-02 19:21 bin_gege 阅读(149) 评论(0) 推荐(0)
摘要:题目链接:Codeforces Round #433 (Div. 1) D. Michael and Charging Stations 题意: 一个人每天要加油,1种为1000,1种为2000,如果付全额,会得到10%的回扣放在卡上。 如果卡上有剩余的回扣,可以拿来抵现金。问n天最少需要花多少钱。 阅读全文
posted @ 2017-09-07 19:28 bin_gege 阅读(336) 评论(0) 推荐(0)
摘要:题目链接:hdu 6078 Wavel Sequence 题意: 给你a,b两个序列,让你在a,b中找出公共子序列p,满足p1<p2>p3<p4...,问有多少种方案。 题解: 考虑dp[i][j][2],表示a序列选择第i个数,b序列选择第j个数,该数和上一个数的关系是:0为小于,1为大于,的方案 阅读全文
posted @ 2017-08-04 15:00 bin_gege 阅读(389) 评论(0) 推荐(0)
摘要:题目链接: Codeforces Round #426 (Div. 2) D. The Bakery 题意: 给你n个数,划分为k段,每段的价值为这一段不同的数的个数,问如何划分,使得价值最大。 题解: 考虑dp[i][j]表示划分为前j个数划分为i段的最大价值,那么这就是一个n*n*k的dp, 考 阅读全文
posted @ 2017-08-02 21:09 bin_gege 阅读(147) 评论(0) 推荐(0)
摘要:题目链接:hdu 5745 La Vie en rose 题意: 给两个字符串 a 和 b ,b可以进行变换,规则是可以任意交换相邻两个字符的位置,但是不可以有交叉(例如3和4交换,5和6交换 互不影响,但是2和3,3和4就不可以)。求a中每一个位置能不能匹配b或b变换得到的子串。 题解: 考虑dp 阅读全文
posted @ 2017-07-30 15:26 bin_gege 阅读(113) 评论(0) 推荐(0)
摘要:题目链接:Codeforces Round #424 (Div. 2) D. Office Keys 题意: 在一条轴上有n个人,和m个钥匙,门在s位置。 现在每个人走单位距离需要单位时间。 每个钥匙只能被一个人拿。 求全部的人拿到钥匙并且走到门的最短时间。 题解: 显然没有交叉的情况,因为如果交叉 阅读全文
posted @ 2017-07-14 22:54 bin_gege 阅读(163) 评论(0) 推荐(0)
摘要:题目链接:Codeforces Round #417 (Div. 2) B. Sagheer, the Hausmeister 题意: 有n层楼,每层有m个房间,每层的两边是楼梯。 现在有一个人站在左下角,这个人必须将这一层的灯关闭后才能去另外一层。 每移动一次需要1分钟,问关闭所有灯需要多少时间。 阅读全文
posted @ 2017-07-08 14:39 bin_gege 阅读(157) 评论(0) 推荐(0)
摘要:题目链接:Codeforces Round #416 (Div. 2) C. Vladik and Memorable Trip 题意: 给你n个数,现在让你选一些区间出来,对于每个区间中的每一种数,全部都要出现在这个区间。 每个区间的价值为该区间不同的数的异或值,现在问你这n个数最大的价值是多少。 阅读全文
posted @ 2017-05-27 21:15 bin_gege 阅读(198) 评论(0) 推荐(0)
摘要:题目链接:hdu 6024 Building Shops 题意: 要在n个点上建若干小卖店,每个点建造小卖店的消费为cost[i],如果这个点没有建造小卖店,那么这个点的费用为和左边最近的点的坐标差。 求总的最小费用。 题解: 首先,第一个点必须建造,然后对于第i个点: dp[i]=min(dp[i 阅读全文
posted @ 2017-05-16 20:14 bin_gege 阅读(228) 评论(0) 推荐(0)
摘要:题目链接:hdu 6017 Girls Love 233 题意: 给你一串含2,3的串,现在最多交换m/2次,问最多能形成多少个233 题解:bc官方题解: 大家要学会分析状态啊喂!多思考多开脑洞,分析出状态之后,就是一个DP或者记忆化搜索,自然就可以写出来啦! 首先,因为字符不是'2'就是'3', 阅读全文
posted @ 2017-02-26 21:23 bin_gege 阅读(247) 评论(0) 推荐(0)
摘要:题目链接:C. Alyona and Spreadsheet 题意: 给你一个n*m的矩阵,现在有k个询问,每次给你一个l,r,问你在[l,r]这行中能否有一列数十非递减的顺序 题解: 用vector来保存矩阵。 对于每一行n*m dp一下最远能达到的范围,然后询问的时候就判断l,r是否在这个范围内 阅读全文
posted @ 2017-02-24 21:36 bin_gege 阅读(178) 评论(0) 推荐(0)
摘要:题目链接:hdu 4570 Multi-bit Trie 题意: 这题的题意要看半天,其实就是让你求∑ai*(2^bi),一个长度为n的数列,将其分成若干段(每一段的长度要<=20), 要求∑ai*(2^bi)最小,其中ai是每一段数列的第一项,bi是每一段的长度。 比如样例:1 2 4 4 5 4 阅读全文
posted @ 2017-02-21 14:50 bin_gege 阅读(146) 评论(0) 推荐(0)
摘要:题目链接:hdu_5965_扫雷 题意: 中文,还是自己看吧。 题解: 现场赛这题用的状压DP过的,不过现在想想当时还确实想复杂了,冷静下来仔细思靠一下,其实第i-1个确定了,那么第i个也是确定的,可以递推出来。 设dp[i]表示第i列的雷数,然后枚举一下第一列的雷数,就可以推出所有的雷,然后算一下 阅读全文
posted @ 2016-11-05 18:56 bin_gege 阅读(471) 评论(0) 推荐(0)
摘要:题目链接:hdu_5903_Square Distance 题意: 给你一个长度为n的a串,一个数m,现在让你构造一个长度也为n的b串,使这个串是由两个相同的串拼起来的,并且和a串对应的位不同的数量为m 题解: 1.可以知道构造的串前面和后面都是相同的,所以只需要构造前半段就行了,当然你可以分类讨论 阅读全文
posted @ 2016-09-25 16:51 bin_gege 阅读(354) 评论(0) 推荐(0)
摘要:题目链接:hdu_5904_LCIS 题意: 给你两串数,让你找这两串数的最长公共子序列,并且这个最长公共子序列是连续的数值 题解: 我们首先先分别处理出a,b的每个数的最长连续的长度 然后随便找一串数来更新一下答案就行了 1 #include<cstdio> 2 #include<algorith 阅读全文
posted @ 2016-09-24 22:36 bin_gege 阅读(272) 评论(0) 推荐(0)
摘要:题目链接:hdu_5890_Eighty seven 题意: 50个数,10W个询问,每次问删掉第i,j,k个数后,是否存在一种选10个数和为87的方案,只需要输出 ’Yes’ 或者 ’No’ 题解: 暴力:不同的询问大概2W个,每个暴力bitset DP,抠一抠能卡着过。优化1:先求出一组解,如果 阅读全文
posted @ 2016-09-23 23:58 bin_gege 阅读(238) 评论(0) 推荐(0)
摘要:题目链接:hdu_2296_Ring 题意: 有m个字符串,每个字符串有一个价值,现在让你组成一个不超过n长度的字符串,使得价值最大 题解: 很明显是在AC自动机上的DP,设dp[i][j]表示当前长度为i,AC自动机上匹配到j这个节点的最大价值,这里要求字典序最小,处理的稍微复杂一点,具体看代码 阅读全文
posted @ 2016-08-30 21:24 bin_gege 阅读(151) 评论(0) 推荐(0)
摘要:题目链接:Codeforces Round #369 (Div. 2) C. Coloring Trees 题意: 有n个树,每个树有一个颜色,如果颜色值为0,表示没有颜色,一共有m个颜色,第j种颜色涂第i棵树需要花费pij,颜色一样且相邻的分为一组 现在要将所有颜色为0的树涂上颜色,使得这些树恰好 阅读全文
posted @ 2016-08-30 16:49 bin_gege 阅读(196) 评论(0) 推荐(0)
摘要:题目链接:Codeforces Round #367 (Div. 2) C. Hard problem 题意: 给你一些字符串,字符串可以倒置,如果要倒置,就会消耗vi的能量,问你花最少的能量将这些字符串排成字典序 题解: 当时1点过头太晕了,看错题了,然后感觉全世界都会,就我不会,- -!结果就是 阅读全文
posted @ 2016-08-12 15:17 bin_gege 阅读(150) 评论(0) 推荐(0)
摘要:题目链接:hdu_5807_Keep In Touch 题意: 1004 Keep In Touch 考虑dp,设f[i][j][k]表示三个人分别在i,j,k时的方案数,直接转移是O(n^6)的。 于是考虑加维,设f[i][j][k][now]表示三个人分别在i,j,k,时,目前准备走now这个人 阅读全文
posted @ 2016-08-07 21:58 bin_gege 阅读(478) 评论(0) 推荐(0)