会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
新博客↓
http://progrom.cn/
博客园
首页
新随笔
联系
订阅
管理
上一页
1
···
15
16
17
18
19
20
21
22
23
下一页
2016年1月20日
LightOJ1119 Pimp My Ride(状压DP)
摘要: dp[S]表示已经完成的工作集合 枚举从哪儿转移过来的,再通过枚举计算花费。。水水的。。 1 #include<cstdio> 2 #include<cstring> 3 #include<algorithm> 4 using namespace std; 5 #define INF (1<<30)
阅读全文
posted @ 2016-01-20 16:31 WABoss
阅读(268)
评论(0)
推荐(0)
2016年1月19日
LightOJ1105 Fi Binary Number(数位DP)
摘要: 题目要求第k个没有连续两个1的二进制数。 这算数位DP吧,只不过以前遇到的是统计区间的数字情况,而这题是求第几个数字,差不多是反过来的。 本来我想用状态dp[i][0/1]表示长度i末尾0或1的二进制数个数,发现这样好像没法解。 最后需要根据数位DP状态的值推算出要求二进制数各个位置是0还是1,这个
阅读全文
posted @ 2016-01-19 12:01 WABoss
阅读(235)
评论(0)
推荐(0)
2016年1月18日
LightOJ1086 Jogging Trails(欧拉回路+中国邮递员问题+SPFA)
摘要: 题目求从某点出发回到该点经过所有边至少一次的最短行程。 这个问题我在《图论算法理论、实现及应用》中看过,是一个经典的问题——中国邮递员问题(CPP, chinese postman problem)也称为中国邮路问题,是我国数学家管梅谷教授于1962年首次提出的,引起了世界不少数学家的关注。例如19
阅读全文
posted @ 2016-01-18 21:19 WABoss
阅读(1900)
评论(0)
推荐(0)
2016年1月17日
LightOJ1068 Investigation(数位DP)
摘要: 这题要求区间有多少个模K且各位数之和模K都等于0的数字。 注意到[1,231]这些数最大的各位数之和不会超过90左右,而如果K大于90那么模K的结果肯定不是0,因此K大于90就没有解。 考虑到数据规模,数据组数,这题状态这么表示: dp[i][j][k]:位数为i模K结果为j且各位数之和模K结果为k
阅读全文
posted @ 2016-01-17 21:50 WABoss
阅读(181)
评论(0)
推荐(0)
2016年1月16日
LightOJ1060 nth Permutation(不重复全排列+逆康托展开)
摘要: 一年多前遇到差不多的题目http://acm.fafu.edu.cn/problem.php?id=1427。 一开始我还用搜索。。后来那时意外找到一个不重复全排列的计算公式:M!/(N1!*N2!*...*Nn!), 然后就靠自己YY出解法,搞了好几天,最后向学长要了数据,然后迷迷糊糊调了,终于A
阅读全文
posted @ 2016-01-16 17:42 WABoss
阅读(309)
评论(0)
推荐(0)
LightOJ1064 Throwing Dice(DP)
摘要: 第一眼以为是概率DP,我还不会。不过看题目那么短就读读,其实这应该还不是概率DP,只是个水水的DP。。 dp[n][s]表示掷n次骰子点数和为s的情况数 dp[0][0]=1 dp[i][j]=∑dp[i-1][j-k] (k∈[1,6] 且 j-k>=0) 要求的概率就是情况数/掷n次骰子的总情况
阅读全文
posted @ 2016-01-16 15:41 WABoss
阅读(220)
评论(0)
推荐(0)
2016年1月15日
LightOJ1122 Digit Count(DP)
摘要: dp[i][j]表示长度i末尾为S[j]的方案数 dp[1][0...m-1]=1 dp[i][j]=∑dp[i-1][k] (|S[k]-S[j]|<=2) 1 #include<cstdio> 2 #include<cstdlib> 3 #include<cstring> 4 using nam
阅读全文
posted @ 2016-01-15 23:36 WABoss
阅读(369)
评论(0)
推荐(0)
ZOJ1516 Uncle Tom's Inherited Land(二分图最大匹配)
摘要: 一个经典的构图:对格子进行黑白染色,黑白的点分别作XY部的点。 这一题的边就是可以出售的单位面积2的土地,边的端点就是这个土地占用的X部和Y部的两个点。 这样就建好二分图,要求最多土地的答案显然是这个二分图的最大边独立集,也就是最大匹配。 1 #include<cstdio> 2 #include<
阅读全文
posted @ 2016-01-15 20:24 WABoss
阅读(383)
评论(0)
推荐(0)
LightOJ1057 Collecting Gold(状压DP)
摘要: 这道题可以想到几点: 整个行程可以看作一次次的行走,每次行走都是用最短的路程从某一非空点到达另外一非空点; 两点间最少的步数是二者x和y坐标差的最大值; 返回原点这个过程,肯定是取完最后一个黄金后直接用最少的步数从这儿出发回到原点。 然后就是状压DP了: dp[u][S]:经过非空点集S后到达u点最
阅读全文
posted @ 2016-01-15 17:12 WABoss
阅读(204)
评论(0)
推荐(0)
LightOJ1051 Good or Bad(DP)
摘要: 这题感觉做法应该挺多吧,数据规模那么小。 我用DP乱搞了。。 dp0[i][j]表示字符串前i位能否组成末尾有连续j个元音字母 dp1[i][j]表示字符串前i位能否组成末尾有连续j个辅音字母 我的转移方案是尽量不要出现BAD字符串。 如果最后转移不过去那就说明一定会出现BAD字符串,如果可以转移到
阅读全文
posted @ 2016-01-15 16:09 WABoss
阅读(326)
评论(0)
推荐(0)
2016年1月14日
LightOJ1044 Palindrome Partitioning(区间DP+线性DP)
摘要: 问题问的是最少可以把一个字符串分成几段,使每段都是回文串。 一开始想直接区间DP,dp[i][j]表示子串[i,j]的答案,不过字符串长度1000,100W个状态,一个状态从多个状态转移来的,转移的时候要枚举,这样时间复杂度是不可行的。 然后我就想降维度了,只能线性DP,dp[i]表示子串[0,i]
阅读全文
posted @ 2016-01-14 17:32 WABoss
阅读(210)
评论(0)
推荐(0)
LightOJ1037 Agent 47(状压DP)
摘要: dp[S]表示已经消灭目标集合为S的最少射击数 dp[0]=0 dp[S]=min( dp[S'] + min( health[i] , health[i]/demage[j][i] ) ) 其中S-S'={i},j∈S' 1 #include<cstdio> 2 #include<cstring>
阅读全文
posted @ 2016-01-14 15:50 WABoss
阅读(176)
评论(0)
推荐(0)
2016年1月13日
LightOJ1033 Generating Palindromes(区间DP/LCS)
摘要: 题目要计算一个字符串最少添加几个字符使其成为回文串。 一年多前,我LCS这道经典DP例题看得还一知半解时遇到一样的问题,http://acm.fafu.edu.cn/problem.php?id=1007。 当时完全靠自己瞎YY出了LCS的解法: 我当时这么想的: 把字符串分成两个部分,假设这两个部
阅读全文
posted @ 2016-01-13 19:30 WABoss
阅读(257)
评论(0)
推荐(0)
LightOJ1032 Fast Bit Calculations(数位DP)
摘要: 显然数位DP。 dp[i][j]表示所有末尾为j的i位二进制数相邻位的数量和 初始状态dp[2][1]=1 从长度i-1转移到长度i就是在i-1位的末尾添上0或1,转移方程就是: dp[i][0]=dp[i-1][0]+dp[i-1][1] dp[i][1]=dp[i-1][0]+dp[i-1][1
阅读全文
posted @ 2016-01-13 16:24 WABoss
阅读(271)
评论(0)
推荐(0)
2016年1月12日
POJ1466 Girls and Boys(二分图最大点独立集)
摘要: 最大点独立集就是无向图中最多的两两不相邻的点集。 二分图最大点独立集=顶点数-二分图最大边独立集(二分图最大匹配) 这一题男女分别作YX部,如果x和y有浪漫关系则连边,如此构造二分图,答案显然就是最大点独立集。另外要先进行二分图染色,以确定每个id的性别。 1 #include<cstdio> 2
阅读全文
posted @ 2016-01-12 21:07 WABoss
阅读(446)
评论(0)
推荐(0)
上一页
1
···
15
16
17
18
19
20
21
22
23
下一页
公告