• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 众包
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
dwtfukgv
博客园    首页    新随笔    联系   管理    订阅  订阅
上一页 1 ··· 14 15 16 17 18 19 20 21 22 ··· 58 下一页
2017年8月12日
ZOJ 3201 Tree of Tree (树形DP)
摘要: 题意:给定一棵树,求大小为k的一个子树的最大权值。 析:dp[i][j] 表示以 i 为根大小为 j 时最大权值。dp[i][j] = max{dp[i][j-k] + dp[son][k]},状态方程。 有一个要注意,因为要选的是一棵子树,所以以哪个点为根都行,也就是说,对于任意子树都能找一个合适 阅读全文
posted @ 2017-08-12 21:08 dwtfukgv 阅读(272) 评论(0) 推荐(0)
HDU 5834 Magic boy Bi Luo with his excited tree (树形DP)
摘要: 题意:给定一棵树,每个点有个权值,每条边有权值,每经过边都会消耗相应的权值,但是点的权值只能获得一次,问你从 i 点出发能获得的最大权值是多少。 析:树形DP,就是太麻烦了,两次dfs,维护一共6个值分别是,从 i 出发的最大值并且返回 i, 从 i 出发的最大值并且不返回,从 i 出发的次大值并且 阅读全文
posted @ 2017-08-12 13:35 dwtfukgv 阅读(397) 评论(0) 推荐(0)
2017年8月11日
HDU 6097 Mindis (计算几何)
摘要: 题意:给一个圆C和圆心O,P、Q是圆上或圆内到圆心距离相等的两个点,在圆上取一点D,求|PD| + |QD|的最小值 析:首先这个题是可以用三分过的,不过也太,。。。。 官方题解: 很不幸不总是中垂线上的点取到最小值,考虑点在圆上的极端情况。 做P点关于圆的反演点P',OPD与ODP'相似,相似比是 阅读全文
posted @ 2017-08-11 19:47 dwtfukgv 阅读(230) 评论(0) 推荐(0)
LightOJ 1284 Lights inside 3D Grid (数学期望)
摘要: 题意:在一个三维的空间,每个点都有一盏灯,开始全是关的.现在每次随机选两个点,把两个点之间的全部点,开关都按一遍,问k次过后开着的灯的期望数量; 析:很容易知道,如果一盏灯被按了奇数次,那么它肯定是开的,否则就是关的,所以我们只要计算每盏灯开着的概率就好了。对于每盏灯,假设开一次的概率是p, 这个很 阅读全文
posted @ 2017-08-11 14:02 dwtfukgv 阅读(207) 评论(0) 推荐(0)
HYSBZ 1036 树的统计Count (水题树链剖分)
摘要: 题意:中文题。 析:就是直接维护一个最大值和一个和,用线段树维护即可,这个题很简单,但是我卡了一晚上,就是在定位的时候,位置直接反过来了,但是样例全过了。。。真是。。。 代码如下: 阅读全文
posted @ 2017-08-11 00:16 dwtfukgv 阅读(174) 评论(0) 推荐(0)
2017年8月9日
POJ 3709 K-Anonymous Sequence (斜率优化DP)
摘要: 题意:有一个不递减的序列,现在要把这些数分成若干个部分,每部分不能少于m个数。每部分的权值为所有数减去该部分最小的数的和。求最小的总权值。 析:状态方程很容易写出来,dp[i] = min{dp[j] + sum[i] - sum[j] - (i-j)*a[j+1] },然而这个复杂度是 O(n^2 阅读全文
posted @ 2017-08-09 21:15 dwtfukgv 阅读(205) 评论(0) 推荐(0)
LightOJ 1065 Island of Survival (概率DP?)
摘要: 题意:有 t 只老虎,d只鹿,还有一个人,每天都要有两个生物碰面,1.老虎和老虎碰面,两只老虎就会同归于尽 2.老虎和人碰面或者和鹿碰面,老虎都会吃掉对方 3.人和鹿碰面,人可以选择杀或者不杀该鹿4.鹿和鹿碰面,没事问人存活下来的概率 析:最后存活肯定是老虎没了,首先可以用概率dp来解决,dp[i] 阅读全文
posted @ 2017-08-09 18:27 dwtfukgv 阅读(254) 评论(0) 推荐(0)
LightOJ 1248 Dice (III) (水题,期望DP)
摘要: 题意:给出一个n面的色子,问看到每个面的投掷次数期望是多少。 析:这个题很水啊,就是他解释样例解释的太。。。我鄙视他,,,,, dp[i] 表示 已经看到 i 面的期望是多少,然后两种选择一种是看到新的一面,另一种是看到旧的一面,然后就很出答案了。 代码如下: 阅读全文
posted @ 2017-08-09 17:05 dwtfukgv 阅读(190) 评论(0) 推荐(0)
LightOJ 1079 Just another Robbery (01背包)
摘要: 题意:给定一个人抢劫每个银行的被抓的概率和该银行的钱数,问你在他在不被抓的情况下,能抢劫的最多数量。 析:01背包,用钱数作背包容量,dp[j] = max(dp[j], dp[j-a[i] * (1.0 - pp[i])),dp[i] 表示不被抓的最大概率,在能抢劫到 i 个钱。 代码如下: 阅读全文
posted @ 2017-08-09 16:13 dwtfukgv 阅读(225) 评论(0) 推荐(0)
LightOJ 1038 Race to 1 Again (概率DP,记忆化搜索)
摘要: 题意:给定一个数 n,然后每次除以他的一个因数,如果除到1则结束,问期望是多少。 析:概率DP,可以用记忆公搜索来做,dp[i] = 1/m*sum(dp[j] + 1) + 1/m * (dp[i] + 1) ==> dp[i] = (sum(dp[j]) + m) / (m-1)。其中m是因数个 阅读全文
posted @ 2017-08-09 15:18 dwtfukgv 阅读(190) 评论(0) 推荐(0)
LightOJ 1027 A Dangerous Maze (数学期望)
摘要: 题意:你面前有 n 个门,每次你可以选择任意一个进去,如果xi是正数,你将在xi后出去,如果xi是负数,那么xi后你将回来并且丢失所有记忆,问你出去的期望。 析:两种情况,第一种是直接出去,期望就是 1/n * xi 第二种是回来了,再出去 1/n*(-xi+E), 然后就可以得到 E = sum 阅读全文
posted @ 2017-08-09 14:02 dwtfukgv 阅读(220) 评论(0) 推荐(0)
LightOJ 1258 Making Huge Palindromes (Manacher)
摘要: 题意:给定上一个串,让你在后面添加一些字符,使得这个串成为一个回文串。 析:先用manacher算法进行处理如果发现有字符匹配超过最长的了,结束匹配,答案就是该字符前面那个长度加上该串原来的长度。 代码如下: 阅读全文
posted @ 2017-08-09 10:20 dwtfukgv 阅读(178) 评论(0) 推荐(0)
Manacher 算法
摘要: //输入,并处理得到字符串s int p[1000], mx = 0, id = 0; memset(p, 0, sizeof(p)); for (i = 1; s[i] != '\0'; i++) { p[i] = mx > i ? min(p[2*id-i], mx-i) : 1; while (s[i + p[i]] == s[i - p[i]]) p[i]++; ... 阅读全文
posted @ 2017-08-09 10:04 dwtfukgv 阅读(88) 评论(0) 推荐(0)
2017年8月8日
CodeForces 489E Hiking (二分+DP)
摘要: 题意: 一个人在起点0,有n个休息点,每个点有两个数值,分别表示距离起点的距离xi,以及所获得的愉悦值bi,这个人打算每天走L距离,但实际情况不允许他这么做。定义总体失望值val = sum(sqrt(Ri - L)) / sum(bi); 现在要使得val最小(这个人必须要到达最终的节点)。 析: 阅读全文
posted @ 2017-08-08 11:08 dwtfukgv 阅读(372) 评论(0) 推荐(0)
2017年8月6日
HDU 2829 Lawrence (斜率优化DP或四边形不等式优化DP)
摘要: 题意:给定 n 个数,要你将其分成m + 1组,要求每组数必须是连续的而且要求得到的价值最小。一组数的价值定义为该组内任意两个数乘积之和,如果某组中仅有一个数,那么该组数的价值为0。 析:DP状态方程很容易想出来,dp[i][j] 表示前 j 个数分成 i 组。但是复杂度是三次方的,肯定会超时,就要 阅读全文
posted @ 2017-08-06 22:59 dwtfukgv 阅读(329) 评论(0) 推荐(0)
UVa 1451 Average (斜率优化)
摘要: 题意:给定一个01序列,让你找出一个长度大于等于F的连续子序列使得平均值最大。 析:直接枚举肯定是O(n^3),超时,然后用前缀和来优化,O(n^2),还是太大,这个要求的平均值是 i > j (sum[i] - sum[j-1]) / (i-(j-1)),这正好就是一个斜率的表示形式,可以考虑用优 阅读全文
posted @ 2017-08-06 13:08 dwtfukgv 阅读(199) 评论(0) 推荐(0)
2017年8月5日
POJ 1160 Post Office (四边形不等式优化DP)
摘要: 题意: 给出m个村庄及其距离,给出n个邮局,要求怎么建n个邮局使代价最小。 析:一般的状态方程很容易写出,dp[i][j] = min{dp[i-1][k] + w[k+1][j]},表示前 j 个村庄用 k 个邮局距离最小,w可以先预处理出来O(n^2),但是这个方程很明显是O(n^3),但是因为 阅读全文
posted @ 2017-08-05 17:09 dwtfukgv 阅读(231) 评论(0) 推荐(0)
四边形不等式优化DP
摘要: 转载:http://www.cnblogs.com/vongang/archive/2013/01/21/2869315.html 1.当决策代价函数w[i][j]满足w[i][j]+w[i’][j’]<=w[I;][j]+w[i][j’](i<=i’<=j<=j’)时,称w满足四边形不等式.当函数 阅读全文
posted @ 2017-08-05 17:03 dwtfukgv 阅读(159) 评论(0) 推荐(0)
HDU 3507 Print Article (斜率DP)
摘要: 题意:要输出N个数字a[N],输出的时候可以连续连续的输出,每连续输出一串,它的费用是 “这串数字和的平方加上一个常数M”。 析:这个题很容易想到DP方程dp[i] = min{dp[j] + M + (sum[i]-sum[j])^2},但是很明显是O(n^2),TLE是必然的,所以要进行优化。 阅读全文
posted @ 2017-08-05 11:19 dwtfukgv 阅读(166) 评论(0) 推荐(0)
2017年8月4日
LightOJ 1427 Substring Frequency (II) (AC自动机)
摘要: 题意:给定一个文本串和 n 个子串,问你子串在文本串出现的次数。 析:很明显的AC自动机,只要把先把子串进行失配处理,然后再去用文本串去匹配,在插入子串时就要标记每个串,注意串可能是相同的,这个我错了两次,最后匹配一次就OK了。 代码如下: 阅读全文
posted @ 2017-08-04 21:26 dwtfukgv 阅读(326) 评论(0) 推荐(0)
上一页 1 ··· 14 15 16 17 18 19 20 21 22 ··· 58 下一页
博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3