随笔分类 - 51nod
摘要:这题好妙啊,看讨论区很多做法,但我都不会^ ^ http://www.51nod.com/Question/Index.html#questionId=1542&isAsc=false 讨论区kczno1大佬的做法: dfs一遍,每个深度记每个字母的奇偶性,这个用一个二进制数就可以了。 然后对每个询
阅读全文
摘要:LCA裸题 只有代码无原理,给自己复习用 1. ST表(这题2^10就够了) 1 #include <bits/stdc++.h> 2 using namespace std; 3 4 const int maxn=2e3+50; 5 6 int cnt,dfn[maxn],dep[maxn],dp
阅读全文
摘要:V3其实和dp关系不大,思想挂标题上了,丑陋的代码不想放了。
阅读全文
摘要:dp[ i ][ 0 ] : 第i个位置不取 dp[ i ][ 1 ] : 第i个位置取 这样就可以得到状态转移方程:
阅读全文
摘要:1402最大值:正向从1到n,如果没有限制,就依次递增1,如果有限制,就取那个限制和递增到这的最小值。这样保证1和每个限制点后面都是符合题意的递增,但是限制点前面这个位置可能会有落差(之前递增多了)。不过我们再反向来一遍,再使每一个限制点前面都是符合题意的递增,每个位置取反向这个过程和正向扫过的最小
阅读全文
摘要:51nod level 2:50/51 剩的一个题是切比雪夫距离转曼哈顿距离,现学的,bzoj3710过了,51nod上全wa了,很迷,可能有坑⑧。 level 3:62/68 之前有的题有思路但是不敢写,有的题属实不会。剩下的这几个是铁不会。还有的题虽然写了但还是不会……哈哈哈还有的题写了忘了。
阅读全文
摘要:要求每段的点数都一样,因此分的段数cnt肯定是n的因子,要求每段都有山峰,因此cnt肯定小于等于山峰数量。分段的宽度d=n/cnt,对山峰数量做一个前缀和,检查一下每一段的山峰数量是否没有增加即可。
阅读全文
摘要:我本来想把每个谷都处理了,想了下觉得不好办。后来看其他人写的是处理每个位置,把每个位置可以接的水累加起来。整挺好。
阅读全文
摘要:对于每一个元素,预处理出它作为最小值,两边可以作用到的最大位置。比如下标∈[0,8]的这个数组:1 8 6 2 5 4 3 8 7,1可以作用到所有区间,2可以作用到区间[1,8],第一个8可以作用到[1,7]。也就是说从两边分别找到第一个大于等于这个元素的位置,然后标记,其实就是找最宽的区间长度。
阅读全文
摘要:好好读题嗷:“所以我们要求阵中的魔法链的魔力值最大值尽可能的小,与此同时,魔力值之和要尽可能的大。” 第一条件是生成树的最大边权更小,第二条件是在最大边权的限制下搞一个最大生成树。 至于最大生成树,如果用prime就把边权全都置负,如果用kruskal就把边权降序排列,生成的时候加一个小判断。
阅读全文
摘要:还以为序列自动机是什么,写完无意间看到帖子原来这就是序列自动机……这算自己发现算法🐎(雾 看网上的序列自动机是O(26*len)预处理,O(len)查询,不过用vector和二分查找就可以更快一点了,写起来也比较清楚。 主要思想就是对于母串,从前往后扫一遍,记录每种(就那26种)字母出现的下标,p
阅读全文
摘要:一开始以为是贪心,然后发现没法贪。暴力枚举肯定T,于是用约束关系优化: 假设wr >= wb, 第一种情况:wr >= sqrt (c), 则此时最多吃c / wr个r,且c / wr <= sqrt (c),这样从0到c / wr枚举r的数量即可。为什么不枚举b的数量,因为c/wr更小。这样就获得
阅读全文
摘要:数据范围好小。。。 题目中没说要升序降序,不过样例解释里可以看出是要升序。
阅读全文
摘要:这题打表去找因子的个数然后判奇偶也行。预处理O(n) 扫一遍判断O(n)。 不过想深一步,这题就是找n以内的平方数的数量。so……
阅读全文
摘要:好像这题是4级题下放2级? 预处理:求每个位置 x 左区间 [ 0 , x ] 中 1 比 0 多的数量和右区间 ( x , n - 1 ] 中 0 比 1 多的数量(少就是负的)。相当于求两个前缀和。这样在判断 1 多还是 0 多时判断前缀和与零的大小关系就行了。 更新答案:对于字符串中的每个位置
阅读全文
摘要:普通算法肯定T了,所以怎么算呢?和矩阵有啥关系呢? 打数学符号太费时,就手写了: 所以求Fib(n)就是求矩阵 | 1 1 |n-1 第一行第一列的元素。 | 1 0 | 其实学过线代的同学应该一看就看出来了,然鹅我还没学,所以不得不写几个不必要的等式=。=
阅读全文
摘要:题目链接:http://www.51nod.com/Challenge/Problem.html#!#problemId=1265 以其中某一点向其它三点连向量,若四点共面,这三个向量定义的平行六面体的体积为零。 而这个体积等于这三个向量的混合积,所以只要验证混合积是否为零。 |ax ay az|
阅读全文
摘要:题目链接:http://www.51nod.com/Challenge/Problem.html#!#problemId=1264 检查点的位置就行了,具体见注释。
阅读全文
摘要:题目链接:http://www.51nod.com/Challenge/Problem.html#!#problemId=1298 转化成判断三条线段和圆是否🍌相交就行了
阅读全文
摘要:SG函数先不说,给自己总结下三大博弈。和二进制及黄金分割联系密切,数学真奇妙,如果不用考试就更好了。 1.Bash Game:n个物品,最少取1个,最多取m个,先取完者胜。 给对手留下(m+1)的倍数肯定获胜。若n%(m+1)==0,先手必败。 51nod裸题:1066 2.Nim Game:n堆物
阅读全文