摘要: https://www.luogu.org/problemnew/show/P3384 树链剖分模板,需要的自取 阅读全文
posted @ 2019-05-07 21:27 Venux 阅读(169) 评论(0) 推荐(0)
摘要: http://acm.hdu.edu.cn/showproblem.php?pid=6070 题解 首先不难看出错误率是单调的,那么我们可以直接二分答案x,某个区间的错误率=区间数的种类cnt/区间长度r-l+1,变成:cnt+l*x<r*x+x;然后枚举区间区间右端点r,当前点影响的区间是le[i 阅读全文
posted @ 2019-04-28 18:44 Venux 阅读(178) 评论(0) 推荐(0)
摘要: http://www.51nod.com/Challenge/Problem.html#!#problemId=1571 题解 题目要求的最近点对不太符合区间加合性,所以不能直接用线段树在线做。 我们可以先把数据离散化,求出当前点左边离他最近的点的位置,从左到右扫一遍,更新当前点的距离,然后回答以当 阅读全文
posted @ 2019-04-26 21:52 Venux 阅读(211) 评论(0) 推荐(0)
摘要: http://www.51nod.com/Challenge/Problem.html#!#problemId=1781 题解 核心问题:漏斗从1到n都必须覆盖到,用到dp思想:分别从左往右和从右往左算出小球移动到当前漏斗的最少花费,最后再减去重复的最后一支漏斗的花费更新答案。 具体:把列离散化,然 阅读全文
posted @ 2019-04-25 21:45 Venux 阅读(155) 评论(0) 推荐(0)
摘要: http://www.51nod.com/Challenge/Problem.html#!#problemId=1494 题解 一开始有start个人投自己,num表示当前已经收买了多少人,从大到小枚举自己以i张票当选,那么其他人的票数一定要小于i,拿钱收买他们花费最少的>=i的这部分人,再加上另外 阅读全文
posted @ 2019-04-23 10:41 Venux 阅读(234) 评论(0) 推荐(0)
摘要: http://www.51nod.com/Challenge/Problem.html#!#problemId=1766 题解 首先要知道一个结论:两个区间的最远点对一定由各自区间的最远点对里的点组成。 然后就好做了,dfs建序然后求出欧拉序,然后打st表,通过lca求树上两点距离,然后在欧拉序上建 阅读全文
posted @ 2019-04-22 19:41 Venux 阅读(262) 评论(0) 推荐(0)
摘要: D. Walking Robot 题意 机器人在一维坐标轴上从0走到x,中途可以在有光的地方可以选择给太阳能电池充电,每次移动都要消耗一单位电,蓄电池容量为a,太阳能电池容量为b,一开始都是满电,问机器人采取最佳策略最多可以走多远。 题解 直接贪心模拟即可,具体见代码注释 E. Two Teams 阅读全文
posted @ 2019-04-17 14:47 Venux 阅读(262) 评论(0) 推荐(0)
摘要: LCA板子,动态数组和链式前向星两种存图版本,自取,代码参考MorsLin。 动态数组存图: 前向星: 阅读全文
posted @ 2019-04-15 17:02 Venux 阅读(203) 评论(0) 推荐(0)
摘要: 51Nod 1364 最大字典序排列 抱歉博客两天没更新。今天被数据挖掘老师挂科警告,再也不敢上课划水了,好怕毕不了业啊,为什么大佬们那么强还可以保持gpa,我acm这么菜,怎么学业还出问题了呀,感觉人跟人之间的区别真的比人跟狗的区别还大。 题解 那么我们从左往右依此确定当前位置应该为什么数,现在要 阅读全文
posted @ 2019-04-10 20:16 Venux 阅读(244) 评论(0) 推荐(0)
摘要: http://www.51nod.com/Challenge/Problem.html#!#problemId=1199 又wa了一下午。。。 思路 树的先序遍历顺序刚好对应线段树的一个区间,利用这一点直接dfs建序,然后再建线段树来查询修改就可以了。 阅读全文
posted @ 2019-04-07 18:49 Venux 阅读(162) 评论(0) 推荐(0)