摘要: 人老了,学东西有点慢,学了一天,真是尴尬。 参考:http://www.cnblogs.com/wuminye/p/3525957.html http://dongxicheng.org/structure/lca-rmq/ LCA算法就是求一棵有根树上两个结点(假设是S、T点)的最近的祖先。 我用 阅读全文
posted @ 2016-10-04 20:50 蓝精灵III 阅读(218) 评论(0) 推荐(0) 编辑
摘要: 题目链接 : 1390 游戏得分 思路:很容易证明合法的总分是n^2。那么n就是游戏的回合数。那么总的回合数最多就是sqrt(2e12)。然后求A最少胜几盘相当于B最多胜几盘。假设B总是在低回合中胜出,那么同样的分数,他能胜的盘数更多。于是假设B从第一局就开始胜,这样贪心去取分数,就能求出B最多能胜 阅读全文
posted @ 2016-09-14 13:21 蓝精灵III 阅读(218) 评论(0) 推荐(0) 编辑
摘要: 题目链接:1388 六边形平面 思路:乍一看,这不是挺简单的吗?判断有没有三个紧贴在一起的,或者两个贴在一起的。然后信心满满敲完了,交了,WA了。还好51nod可以下载数据,一看数据,哇!原来还有环!!然后再dfs跑过去看看有没有奇数环就好了。终于AC了! 阅读全文
posted @ 2016-09-13 18:01 蓝精灵III 阅读(327) 评论(0) 推荐(0) 编辑
摘要: 题目链接:1393 0和1相等串 思路:把0当成-1,然后求前缀和。如果出现前缀和相等的,那么这个串肯定就满足要求。因为只要求最长的,所以只需要存前缀和首次出现的位置即可,之后再遇到就可以直接更新答案。 阅读全文
posted @ 2016-09-13 14:01 蓝精灵III 阅读(165) 评论(0) 推荐(0) 编辑
摘要: 题目链接:1352 集合计数 思路:本题相当于求 n+1 = Ax + By。求(x, y)。(x>0, y>0) 用扩展GCD求出一组解之后,通过这组解找到x>0的最小的解和y>0的最小的解,就可以求出一共有多少组解了。 阅读全文
posted @ 2016-09-13 13:45 蓝精灵III 阅读(310) 评论(0) 推荐(0) 编辑
摘要: 题目链接:1416 两点 并查集随便搞一下就过了。 阅读全文
posted @ 2016-09-13 12:29 蓝精灵III 阅读(214) 评论(0) 推荐(0) 编辑
摘要: 题目链接:1289 大鱼吃小鱼 思路:如果把向右的鱼丢进栈里。如果出现向左的鱼,那么让它跟栈里的鱼互吃。如果栈里的鱼都被它吃光,那么答案+1。最后答案加上栈里的鱼。 阅读全文
posted @ 2016-09-13 00:50 蓝精灵III 阅读(277) 评论(0) 推荐(0) 编辑
摘要: 题目链接:1285 山峰和分段 思路:枚举N的因子,然后检查每一段是不是都有山峰就好了。检查的时候用 RMQ。预处理时间复杂度为O(nlogn),总的复杂度也是这么多。 所说有O(n)的解法,不过没想出来。 阅读全文
posted @ 2016-09-12 23:27 蓝精灵III 阅读(242) 评论(0) 推荐(0) 编辑
摘要: 点击查看题目 初看这题,还真的没什么思路(真是惭愧)。 然后看到了这篇论文:传送门 假设要求一个正整数倒数的循环节,其实最后是要求解一个最小的x满足 10x=1(mod C) 10x≡1(modC) 如果gcd(10,C)!=1的话,显然无解。如果存在解的话,根据欧拉公式,那么这个解 x|phi(C 阅读全文
posted @ 2016-09-08 20:16 蓝精灵III 阅读(236) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1100 虽然这题数据有点小,但是做题嘛,总是要有追求的,不能什么都靠暴力。 随便画个图就可以看到,斜率最大的情况它们的横坐标一定是相邻的。于是,最后只要排个序就好了 阅读全文
posted @ 2016-09-08 19:58 蓝精灵III 阅读(206) 评论(0) 推荐(0) 编辑