动规
文章平均质量分 90
AI蜗牛之家
北航烟酒僧~ 百度、腾讯自然语言处理算法工程师~
展开
-
数位DP整理总结
数位动态规划是求解一个大区间[L, R]中间满足条件Q的所有数字的个数(或者和,或其他)的一种方法。它通过分析每一位上的数字,一般用 dp[len][digit][...] 来表示状态“len位长的数字,最高位数字为digit所具有的xx特性”,利用记忆化搜索保存中间结果,从而加快求解速度。 通过求 f(n) 从0到n中满足条件Q的数字的个数,则所求的结果为 f(R) - f(L-1).原创 2017-04-27 16:22:46 · 775 阅读 · 0 评论 -
01背包与完全背包(对比)
#include #include #include using namespace std;int main(){ int T,N,V,V1;//T为测试数据个数 N为物品个数 V为背包所容纳的体积 int f[1000005],vol[50], tem;//f记录i体积下的能盛下的最大价值 vol[i] 第i件物品的体积 val[i]记录第i件物品原创 2014-09-27 18:13:21 · 2140 阅读 · 0 评论 -
蓝桥杯---地宫取宝(记忆搜索=搜索+dp)
问题描述 X 国王有一个地宫宝库。是 n x m 个格子的矩阵。每个格子放一件宝贝。每个宝贝贴着价值标签。 地宫的入口在左上角,出口在右下角。 小明被带到地宫的入口,国王要求他只能向右或向下行走。 走过某个格子时,如果那个格子中的宝贝价值比小明手中任意宝贝价值都大,小明就可以拿起它(当然,也可以不拿)。 当小明走到出口时,如果他手中的宝贝恰好是k件,则原创 2015-04-22 21:55:53 · 6664 阅读 · 15 评论 -
湖南多校对抗赛---Rectangle(01背包)
DescriptionNow ,there are some rectangles. The area of these rectangles is 1* x or 2 * x ,and now you need find a big enough rectangle( 2 * m) so that you can put all rectangles into it(these rect原创 2015-03-29 08:45:44 · 1166 阅读 · 0 评论 -
蓝桥杯---波动数列(dp)(背包)(待解决)
问题描述 观察这个数列: 1 3 0 2 -1 1 -2 ... 这个数列中后一项总是比前一项增加2或者减少3。 栋栋对这种数列很好奇,他想知道长度为 n 和为 s 而且后一项总是比前一项增加a或者减少b的整数数列可能有多少种呢?输入格式 输入的第一行包含四个整数 n s a b,含义如前面说述。输出格式 输出一行,包含一个整数,表示满足条件的方原创 2015-04-21 20:40:40 · 995 阅读 · 0 评论 -
蓝桥杯---最大子阵
问题描述 给定一个n*m的矩阵A,求A中的一个非空子矩阵,使这个子矩阵中的元素和最大。 其中,A的子矩阵指在A中行和列均连续的一块。输入格式 输入的第一行包含两个整数n, m,分别表示矩阵A的行数和列数。 接下来n行,每行m个整数,表示矩阵A。输出格式 输出一行,包含一个整数,表示A中最大的子矩阵中的元素和。样例输入3 3-1 -4 33原创 2015-04-25 21:24:29 · 1180 阅读 · 0 评论 -
蓝桥杯--- 历届试题 邮局 (深搜+暴力)(动态待解决)
问题描述 C村住着n户村民,由于交通闭塞,C村的村民只能通过信件与外界交流。为了方便村民们发信,C村打算在C村建设k个邮局,这样每户村民可以去离自己家最近的邮局发信。 现在给出了m个备选的邮局,请从中选出k个来,使得村民到自己家最近的邮局的距离和最小。其中两点之间的距离定义为两点之间的直线距离。输入格式 输入的第一行包含三个整数n, m, k,分别表示村民的户数、备选的邮原创 2015-05-07 21:41:38 · 3266 阅读 · 0 评论 -
第三届山东ACM省赛 Fruit Ninja I
http://www.sdutacm.org/sdutoj/problem.php?action=showproblem&problemid=2412题意:一个切水果游戏。每秒出现一些水果,它们都在一条线上,有好水果和坏水果,好的可以加分,坏的减分,每次连续切好水果三个以上可以分数加倍。每秒只能切一次,每切一次要间隔m秒。问最多得多少分。暴力+dp 开始的时候没想到,没什么头绪,因原创 2016-05-04 15:04:54 · 883 阅读 · 0 评论 -
Monkey and Banana(DP)
Monkey and BananaTime Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64uSubmit Status Practice HDU 1069DescriptionA group of researchers are designing an exp原创 2016-05-05 22:06:25 · 877 阅读 · 0 评论 -
DP待整理
区间DP:http://blog.csdn.net/lyhvoyage/article/details/24392533数位dp: http://wenku.baidu.com/link?url=o3ER_gVCyB0qcKthM-Y8vPtAGZ_u5bzOu_gUCUhPcXC6YfaSDgtBSXNEEvvGvSzyuDE9TULcPNsDrRd9IUtQVHeKUVrnPUjyfW原创 2016-05-06 08:59:10 · 797 阅读 · 0 评论 -
第五届山东省ACM Colorful Cupcakes(Dp)
Colorful Cupcakes给出ABC三种颜色的个数,求相邻颜色不相同,首尾颜色不相同的串的个数。思路:开始的时候感觉就是个搜索,但是一想简单搜索肯定超时,dp的话也没找出递推公式,竟让把记忆化搜索给忘了,悲哀。。。dp[i][a][b][k]表示前i个位置A有a个B有b个,当前位置颜色是k的个数。假设当前颜色是红色,也就是0(自己定) dp[i]原创 2016-05-11 22:32:44 · 876 阅读 · 0 评论 -
第五届山东省ACM Hearthstone II(Dp)
Hearthstone IIn场比赛,m个场地,mdp[i][j]表示:前i场比赛用了j个场地的情况数dp[i][j]=dp[i-1][j]*j+dp[i-1][j-1]*(m-j+1);#include #include #include using namespace std; const int MOD=1e9+7;原创 2016-05-11 22:41:07 · 757 阅读 · 0 评论 -
格子刷油漆(DP)
格子刷油漆 X国的一段古城墙的顶端可以看成 2*N个格子组成的矩形(如图1所示),现需要把这些格子刷上保护漆。 你可以从任意一个格子刷起,刷完一格,可以移动到和它相邻的格子(对角相邻也算数),但不能移动到较远的格子(因为油漆未干不能踩!) 比如:a d b c e f 就是合格的刷漆顺序。 c e f d a b 是另一种合适的方案。 当已知 N原创 2016-05-25 22:07:06 · 1167 阅读 · 0 评论 -
最长公共子序列(DP + 滚动数组)
虽然最长公共子序列和背包算是DP中最简单的问题了,但是对研究一些东西还是挺有用处的为了整理DP,现整理如下:(含滚动数组)1)最长公共子序列的长度的动态规划方程 设有字符串a[0...n],b[0...m],下面就是递推公式。字符串a对应的是二维数组num的行,字符串b对应的是二维数组num的列。 另外,采用二维数组flag来原创 2017-04-16 17:01:17 · 1802 阅读 · 0 评论 -
HDU 5236 Article(概率DP+贪心 待解决)
ArticleTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 917 Accepted Submission(s): 328Problem DescriptionAs the term is going原创 2017-05-02 08:52:05 · 874 阅读 · 0 评论 -
URAL 2018 The Debut Album(DP)
2018. The Debut AlbumTime limit: 2.0 secondMemory limit: 64 MBPop-group “Pink elephant” entered on recording their debut album. In fact they have only two songs: “My love” and “I miss yo原创 2017-05-02 11:07:43 · 1049 阅读 · 0 评论 -
概率DP总结(待整理)
最近做了一些比较经典的概率DP的题(简单题),在此对于这部分题先进行总结:(一些题没有放在这里,博客中都有)对于这一类问题,需要注意:不是所有离散的期望概率问题都需要概率DP,有时候需要对问题进行分析,再确定具体方法。 例如,如果操作是互相独立的,且操作对象比较多,这时候如果用DP来求解,状态会十分庞大,当然也不排除类似于倍增DP的解法,但更多的是根据操原创 2017-05-02 09:06:40 · 905 阅读 · 0 评论 -
背包精讲之——01背包
#include #include #include using namespace std;int main(){ int T,N,V;//T为测试数据个数 N为物品个数 V为背包所容纳的体积 int f[1001],vol[1001],val[1001] ,tem;//vol[i]第i件物品的体积 val[i]记录第i件物品的价值 scanf("原创 2014-09-26 19:12:20 · 1116 阅读 · 0 评论 -
动规问题概述(待整理)
分类编辑动态规划一般可分为线性动规,区域动规,树形动规,背包动规四类。举例线性动规:拦截导弹,合唱队形,挖地雷,建学校,剑客决斗等区域动规:石子合并, 加分二叉树,统计单词个数,炮兵布阵等树形动规:贪吃的九头龙,二分查找树,聚会的欢乐,数字三角形等背包问题:01背包问题,完全背包问题,分组背包问题,二维背包,装箱问题,挤牛奶(同济ACM第1132题)等应用实例最短路原创 2014-09-26 18:17:14 · 1378 阅读 · 0 评论 -
动态规划汇总
博客原址: http://blog.csdn.net/cc_again?viewmode=list 动态规划一直是ACM竞赛中的重点,同时又是难点,因为该算法时间效率高,代码量少,多元性强,主要考察思维能力、建模抽象能力、灵活度。本人动态规划博客地址:http://blog.csdn.net/cc_again/article/category/1261899****原创 2017-04-19 15:46:15 · 1456 阅读 · 0 评论 -
HZAU 1201 Friends(树形DP 待整理)
1201: FriendsTime Limit: 1 Sec Memory Limit: 1280 MBSubmit: 98 Solved: 16[Submit][Status][Web Board]Description In a country, the relationship between people can be indicated by a原创 2017-04-24 18:42:23 · 848 阅读 · 0 评论 -
POJ 1661Help Jimmy(逆向DP Or 记忆化搜索 Or 最短路径)
Help Jimmy"Help Jimmy" 是在下图所示的场景上完成的游戏。 场景中包括多个长度和高度各不相同的平台。地面是最低的平台,高度为零,长度无限。 Jimmy老鼠在时刻0从高于所有平台的某处开始下落,它的下落速度始终为1米/秒。当Jimmy落到某个平台上时,游戏者选择让它向左还是向右跑,它跑动的速度也是1米/秒。当Jimmy跑到平台的边缘时,开始继续原创 2017-04-18 18:25:49 · 1245 阅读 · 0 评论 -
HDU 1078 FatMouse and Cheese(记忆化搜索 Or DP)
P - FatMouse and Cheese HDU - 1078FatMouse has stored some cheese in a city. The city can be considered as a square grid of dimension n: each grid location is labelled (p,q) where 0 <=原创 2017-04-18 22:21:39 · 835 阅读 · 0 评论 -
福州大学 FOJ有奖月赛-2017年4月(校赛热身赛)(DP)
Problem H Yu-Gi-Oh!Accept: 52 Submit: 704Time Limit: 1000 mSec Memory Limit : 32768 KB Problem Description另一个平行宇宙的YellowStar,是一名游戏王决斗者,某一天它正在进行一场决斗,它的场面上拥有A只磁石战士a,B只磁石战士β,C只磁石战士γ原创 2017-04-16 16:13:47 · 1601 阅读 · 0 评论 -
FOJ有奖月赛-2017年4月(校赛热身赛) random password(DP)
Problem D random passwordAccept: 2 Submit: 64Time Limit: 10000 mSec Memory Limit : 65536 KB Problem Description小茗同学是个很懒的人,为了输入方便输入,他的密码只由1、2、3组成,这也导致了数字键123的过度使用,所以有一天数字键坏了。小茗同原创 2017-04-16 22:13:05 · 1067 阅读 · 0 评论 -
HZAU 1199 Little Red Riding Hood(水DP)
1199: Little Red Riding HoodTime Limit: 1 Sec Memory Limit: 1280 MBSubmit: 876 Solved: 139[Submit][Status][Web Board]Description Once upon a time, there was a little girl. H原创 2017-04-24 18:33:04 · 727 阅读 · 0 评论 -
codeforces 149D Coloring Brackets (区间DP OR 记忆化搜索 总结!!!)
D - Coloring Brackets CodeForces - 149D 题目描述: 给一个合法的括号串,然后问这串括号有多少种涂色方案,当然啦!涂色是有限制的。 1,每个括号只有三种选择:涂红色,涂蓝色,不涂色。 2,每对括号有且仅有其中一个被涂色。 3,相邻的括号不能涂相同的颜色,但是相邻的括号可以同时不涂色。原创 2017-04-21 17:28:07 · 852 阅读 · 0 评论 -
LightOJ 1422 Halloween Costumes (区间DP OR 记忆化搜索 方法总结)
题意:现在那个人要去参加一个聚会,然后总共有n天,每天所要求穿的服饰的序号分别为c[i]。这个人可以一次性穿上1件衣服,或者一次性脱下任意多件衣服。当然也可以在衣服外面套衣服。并且如果这件衣服已经被脱下的话,那么它下次不能再次被穿上,如果我们还需要这件衣服的话,那么我们就只能重新再去买另外一件了。最后问你,如果要参加完所有的派对,那么他所需要的最少的衣服数量是多少。原创 2017-04-20 18:51:22 · 884 阅读 · 0 评论 -
[kuangbin带你飞]专题二十二 区间DP
16 / 43AZOJ 3537Cake43 / 80BLightOJ 1422Halloween Costumes59 / 99CPOJ 2955Brackets23 / 31DCodeForces 149原创 2017-04-19 16:14:36 · 900 阅读 · 0 评论 -
POJ 2955 Brackets (DP Or 记忆化搜索 总结)
POJ - 2955 Brackets We give the following inductive definition of a “regular brackets” sequence:the empty sequence is a regular brackets sequence,if s is a regular brackets sequence, then原创 2017-04-20 20:43:51 · 838 阅读 · 0 评论 -
POJ 1014 dividing(多重背包+二进制拆分)
#include using namespace std;int main (){ int a[6],count=1; int vol[20010],f[20010*6]; while ( scanf("%d %d %d %d %d %d",&a[0],&a[1],&a[2],&a[3],&a[4],&a[5])) { if( a[0]==0 && a[1]==0原创 2014-10-20 22:04:28 · 1329 阅读 · 0 评论 -
Piggy-Bank (完全背包)
Before ACM can do anything, a budget must be prepared and the necessary financial support obtained. The main income for this action comes from Irreversibly Bound Money (IBM). The idea behind is simple原创 2014-10-09 20:50:17 · 1309 阅读 · 0 评论 -
字符串“水”题(状压DP + map哈希总结)
1001: 字符串“水”题时间限制: 1 Sec 内存限制: 128 MB提交: 271 解决: 96[提交][状态][讨论版]题目描述给出一个长度为 n 的字符串(1输入第一行一个正整数 T,表示数据组数(1 接下来 T 行,每行有一个只包含小写字母的字符串。 输出每个答案输出满足要求字符串个数。每个答案占一行。样例原创 2017-05-02 21:36:37 · 1006 阅读 · 0 评论 -
NEERC 2014, Eastern subregional contest(汇总)
之前因为两场比赛时间冲突了,草草水了几发就没再做,整理下!OverviewProblemRank (05:00:00)0 CommentsSettingFavoriteClone Stat#OriginTitle太水!535 / 705A原创 2017-05-02 20:27:51 · 1131 阅读 · 0 评论 -
动态规划入门教程
很特别的一个动态规划入门教程很特别的一个动态规划入门教程今天在网上看到一个讲动态规划的文章,是以01背包为例的,这文章和书上的讲解非常不一样,令我眼前一亮,于是转载一下下~~~(说明一下,本人非常痛恨教材公式定理漫天飞,实际的讲解却讲得非常枯涩难懂,这种中国式的教育已经延绵了几千年了,现在中国的教材还是这个样子,讲清楚些明白些就那么难么?高中有个老师讲的一句话一转载 2014-07-17 08:46:08 · 1050 阅读 · 0 评论 -
2015上海邀请赛
之前除了水了几道题,博客里整理了几道,其他的以后有机会补上 Overview ProblemStatusRank (05:00:00)6 CommentsSettingFavoriteClone Stat#OriginTitle原创 2017-05-01 22:20:15 · 1094 阅读 · 0 评论 -
POJ3666 Making the Grade(DP,离散化 待整理)
题意:给定一个序列,以最小代价将其变成单调不增或单调不减序列,这里的代价看题目公式。思路:很容易想到是DP。1.对前i个序列,构成的最优解其实就是与两个参数有关。一个是这个序列处理后的最大值mx,和这个序列处理的代价值cost。显然最大值mx最小最好(这样第i+1个值可以不花代价直接接在其后面的可能性更大),cost最小也最好(题意要求),但是两者往往是鱼和熊掌。用dp原创 2017-04-19 15:22:28 · 797 阅读 · 0 评论 -
[kuangbin带你飞]专题十二 基础DP1
IDOriginTitle题解连接 167 / 465Problem AHDU 1024Max Sum Plus Plushere 234 / 372Problem BHDU 1029Ignatius and原创 2017-04-15 15:56:41 · 958 阅读 · 0 评论 -
第七届 山东省ACM Feed the monkey(记忆化搜索 OR DP )
Feed the monkeyTime Limit: 2000MS Memory Limit: 131072KBSubmit Statistic DiscussProblem DescriptionAlice has a monkey, she must feed fruit to the monkey every day.She has three kinds o原创 2017-04-14 09:42:30 · 947 阅读 · 0 评论 -
HDU 3652 B-number(*数位DP)
G - B-number HDU - 3652 A wqb-number, or B-number for short, is a non-negative integer whose decimal form contains the sub- string "13" and can be divided by 13. For example, 130 and 2613原创 2017-04-28 10:14:34 · 896 阅读 · 0 评论