上一页 1 2 3 4 5 6 7 ··· 26 下一页
摘要: kmp 引例 传送门 过程 考虑普通的暴力的过程, 其复杂度主要是卡在模式串只向右边移动一个位置 很明显,这忽略了串内部的联系 就比如模式串$aaabaaac$,如果在比较c的时候出现了错误,真的需要从头开始比较么? 很显然,可以从$b$开始进行再一次的比较 那么可以考虑求出以$i$为尾端点的后缀所 阅读全文
posted @ 2020-12-08 22:19 loney_s 阅读(141) 评论(0) 推荐(0)
摘要: 题目 思路 很明显可以对式子进行一个变形$i=m-gcd(a,b)+1$ 考虑如果对$a$和$b$都进行质因数分解 那么有$a=\prod p_i^,b=\prod p_i^$ 那么$gcd(a,b)=\prod p_i^{min(a_i,b_i)}$ 如果$a,b$直接相连,那么天数即为$m-gc 阅读全文
posted @ 2020-11-28 16:43 loney_s 阅读(140) 评论(0) 推荐(0)
摘要: 题目 思路 大意了,以为最长的题目是最恶心的题目 原来的魔音值实际上没有影响,因为不管什么方案都要包含这些基础贡献 仔细观察,其中行和列是独立的 考虑行的式子,设选择的点的行为x 那么就有$ans=\sum|x-x_i|$ 然后?这不是个裸的绝对值不等式的经典式子? 取中位数即可 代码 #inclu 阅读全文
posted @ 2020-11-28 15:55 loney_s 阅读(125) 评论(0) 推荐(0)
摘要: 题目 思路 方法1 如果你对树剖足够熟悉,那么就有一个$O(nloglog)$的算法,具体分数85' 其相当于从当前节点往上一直打标记,查的时候相当于直接找第一个被打标记的点, 机房某64巨佬表示这不是卡卡就能过 代码1 #include<iostream> #include<vector> #in 阅读全文
posted @ 2020-11-28 15:51 loney_s 阅读(138) 评论(0) 推荐(0)
摘要: 题目 思路 移动飞船的操作很显然可以转换成为删掉的操作,如果删掉的点为$i$,就是将$p_$和$p_i$ 相连 这些绳子都是有限制性的, **定义一个概念“阶段”**表示某一段单调的位置 可以发现,最终的答案一定是一些阶段的组合 同时要满足一个阶段中的位置一定在上一个阶段最后两个位置所规定的范围之内 阅读全文
posted @ 2020-10-31 17:10 loney_s 阅读(150) 评论(0) 推荐(0)
摘要: 题目 小 s 要在 \([0,2^n)\) 中选一个整数 \(x\),接着把 \(x\) 依次异或 \(m\) 个整数 \(a_1 \sim a_m\),他想要最大化 \(x\) 的最终取值。 然而问题并没有这么简单,小 r 想要干预小 s 的选择。 在小 s 选出 \(x\) 后,小 r 会选择恰 阅读全文
posted @ 2020-10-30 19:59 loney_s 阅读(259) 评论(0) 推荐(0)
摘要: 题目 传送门 思路 考虑如果有一群人直往右跑,那么设$aim_i $为最优策略下其的终止位置,设$p_i$为他们现在的位置,按照题目给定的式子,消耗的体力值总和即为$\sum_^|aim_i-p_i|$ 因为对于所有的人都有$aim_i>p_i$,所以原式即为$\sum_aim_i-\sum_p_i 阅读全文
posted @ 2020-09-16 14:33 loney_s 阅读(244) 评论(0) 推荐(0)
摘要: 树上莫队 将区间的莫队算法拓展到树上,以此来解决一些树上路径的问题 思路 考虑为什么普通莫队为什么只是排一个序就可以把暴力的时间复杂度除以$\sqrt n$? 其原因是保存了之前的结果,也就是指对于重复的部分不需要多余的空间,只需要调整询问的顺序就可以在整体上得到最大的优化。 树上莫队也是如此,但是 阅读全文
posted @ 2020-09-11 20:21 loney_s 阅读(188) 评论(0) 推荐(0)
摘要: 题目 传送门 思路 这里的解法的说明应该是可以拓展的 首先简化问题,有$n$个盒子,$n$个球,盒子有编号,球也有编号,只有$cnt$个编号盒子中有,并且球中也有这些编号 正难则反,总共的方案数就是$n!$,要算的可以转换为不合法的方案 即总共的方案可以转换为恰好有一个盒子不满足一直累加到恰好有$c 阅读全文
posted @ 2020-09-08 21:16 loney_s 阅读(158) 评论(0) 推荐(0)
摘要: 质数 判断质数 朴素算法 考虑一个数$x$,其一定能分解成$a*b$的形式,这里只需要保证$a$和$b$都为整数即可, 显然的,\(min(a,b)\le \sqrt{x}\),所以只需要枚举$[2,\sqrt x]$即可 bool pd(int x) { for(int i=2;i*i<=x;i+ 阅读全文
posted @ 2020-09-03 20:27 loney_s 阅读(714) 评论(0) 推荐(0)
上一页 1 2 3 4 5 6 7 ··· 26 下一页