动态规划(DP)
文章平均质量分 60
Just_Lm
这个作者很懒,什么都没留下…
展开
-
LightOJ 1051 Good or Bad
题意:给你一个字符串,只包含大写字母和‘?’,如果字符串中出现了连续三个以上的元音字母或者连续五个以上的辅音字母,则这个字符串是bad,不然就是good. ‘?’号可以替换任意字母,即可bad有可good,则输出Mixed. 分析:dpy[i][j]表示到i为止,连续j个元音可否达到。dpf表示辅音。 这个转移当达到3个元音或者5个辅音时后面就不在转移了,原创 2016-08-06 13:19:18 · 375 阅读 · 0 评论 -
LightOJ 1037 Agent 47(状压DP)
题意:有N个敌人,刚开始你有一把枪,每开一枪,可以对敌人造成1点伤害,你杀掉相应的敌人后,可以得到相应敌人的武器。 给你N个敌人的血量,和一个武器伤害矩阵,第i行第j列表示的是第i个敌人的武器,可以对第j个敌人造成1枪mp[i][j]的伤害 问至少要开多少枪才能干掉所有的敌人 分析:其实状压DP就是把所有情况都枚举一遍,状态用二进制01来表示。比如这道题01表示这个人是否被杀。原创 2016-08-06 13:30:16 · 344 阅读 · 0 评论 -
LightOJ 1068 Investigation (数位DP)
题意:求出区间[A,B]内能被K整除且各位数字之和也能被K整除的数的个数。 分析:A,B最多有10位 各位数字之和不会超过90,那么当 k >= 90时,为0. dp[len][y1][y2] 第len位 y1这个数除k的余数 y2位各个位和除k的余数. #include #include #include #include #include #inclu原创 2016-08-08 11:21:13 · 373 阅读 · 0 评论 -
Codeforces766E Mahmoud and a xor trip(按位+树形DP)
树有N(1 ≤ n ≤ 105)个节点,每个点有点权ai(0 ≤ ai ≤ 106),求∑两点间距离。两点间距离:两点间所有点权的异或值。原创 2017-02-14 02:51:52 · 617 阅读 · 0 评论 -
HDU 3001 Travelling (三进制状压dp)
n(n<=10)个城市,知道每个城市间的旅行费用,但每个城市最多走两遍。问最小花费是多少 。 也就是每个城市可以走两次的tsp问题。原创 2017-03-16 16:34:27 · 518 阅读 · 0 评论