NOIP
文章平均质量分 62
Mastey_
万物皆虚,万事皆允
展开
-
扩展Lucas总结
类比:类比一下所有可以用来求组合数的方法:预处理:可以有效处理O(1e6)数据,弊端是不能存在模数不为质数和中的情况,p为模数 帕斯卡恒等式:可以处理O(1e3)的数据,依靠dp,没有模数限制 Lucas定理:可以求n,m较大而p较小的情况,递归在O()O(?)来求,弊端是模数一定是质数 扩展Lucas:跟lucas无关,是中国剩余定理+预处理阶乘,注意,在题中保证p不是质数而且还很大的情况下,能保证p的质因数幂在1e5~6范围内,考虑使用扩展Lucas补充一个:BSGS是求:最小正整数x.原创 2022-05-09 21:24:58 · 252 阅读 · 0 评论 -
中国剩余定理
CRT:证明的话显然,在(mod mi)中才会有Mi*ti=1的意义,而不在(mod mi)情况下时,会整除,因为前者是除以外所有的的乘积,故,不会产生贡献,最终只有原创 2022-05-07 23:11:19 · 273 阅读 · 0 评论 -
求区间元素种类数的几种方法
P1972 [SDOI2009] HH的项链https://www.luogu.com.cn/problem/P1972本博客将以该题目为例进行介绍方法1:树状数组树状数组需要结合离散化处理,我们观察到一个性质,随着右端点的右移,每一种元素的贡献位置(这里指存在贡献的位置,如:1 2 3 1 这组数据,内1元素的贡献可以用4位置提供1次贡献,而1位置的元素贡献为0),因为右端点不断右移,所以不需要考虑查询区间存在如下情况:在上图中,假设7位置的1提供了贡献,此时肯定右端点位置,故上图区间..原创 2022-05-04 18:19:23 · 606 阅读 · 1 评论 -
点分治解析
前言 最近碰见了淀粉质。想系统学学,虽然也学不懂。 算法概述 首先明确用途:在大规模处理树上路径的问题时,可以考虑淀粉质淀粉质(点分治 的主要思想继承了分治的思想,相当于每一次拆开了一棵树(子树),然后不断重复操作,因此,点分治优化的思路就来自于选取的树根的最大深度最小 引理 树的重心 关于树的重心,贴个oiwiki这里我们应用的性质即为性质第一条首先考虑为什么需要树的重心,我们每次分裂出子树,假设子树退化成链,结合线段树的思想,我们知道应该选取尽量到各个........原创 2021-12-16 22:41:43 · 381 阅读 · 0 评论 -
NOIP2021总结
前言 不得不说,noip2021还是较为友好的,虽然自己答的稀碎挂一堆分但还是侥幸没有AFO 考试过程 騲进教学楼心态就炸了忘带核酸报告辣,dayu帮打的( 感动进错考场辣,各种证件协议交错老师只能自己追回来进了考场,wc为毛坐门口啊,冻死我了梅开三度了啊騲开题,T1不是很简单嘛。直接预处理就完了,结果当时想当然7数密度比较小就直接没预处理答案,二分之后直接跑的,感觉均摊不错应该nlogn左右吧,结果T了。当时想到预处理答案结果脑子一热胡了。 狂跌30pts...原创 2021-12-04 11:44:15 · 415 阅读 · 1 评论 -
线段树合集整理
作为oier刷题是碰见的大数据结构的集合作者水平有限,如有不足欢迎批评指正会随时更新其中的题目原创 2021-08-11 11:43:06 · 227 阅读 · 1 评论 -
欧几里得及其扩展
辗转相除法 用途:求解a,b两数的最大公约数定理: 前提:语言表述为:两个整数的最大公约数等于其中较小的那个数和两数相除余数的最大公约数有了这个定理,可在几乎是log的时间复杂度内求得最大公约数int gcd(int a,int b){ if(!b) return a; return gcd(b,a%b);}其定理延申:我们知道而我们知道,,则要求,等价于求因此,这样一看,如果求多个数的最大公约,可化成差分的形式所以一个树状数组...原创 2021-08-09 10:53:14 · 160 阅读 · 0 评论 -
区间二分法
二分查找 while(l<=r){ int mid=(l+r)/2; if(val[mid]==x) return mid; if(val[mid]<x) l=mid+1; else r=mid-1;}很基础的板子,没啥可说保证答案处于以内,循环一般以结束,每次二分的中间值会归于左半段或右半段在单调递增区间中查找第一个满足的数(即的数中最小的一个)while(l<r){ int mid=(l+r)>>1;/*向下取整*/ ...原创 2021-07-30 12:00:46 · 1021 阅读 · 1 评论 -
等比数列求和
引入: 先来看一个问题,求的所有约数之和;解决思路如下:首先将分解质因数,表示为,其中均为质数,因此表示为:。此时我们将的所有约数表示为集合,从这个约数中选出个数的乘积即为一个约数。此时我们根据乘法分配律反推:所有约数之和为:而如何求解每一对括号内的等比数列和? 正文 等比数列求和通项公式:注意,如果解决此类问题,对于除法应为在的条件下做同余,需要用到逆元,还需要关注是否为素数而这里问题来了,我们想用更快的没有除法的方法求等比数列和考虑分治法:如果为奇数,...原创 2021-07-29 14:27:57 · 3339 阅读 · 0 评论 -
欧拉定理及FLT综合
欧拉定理原创 2021-07-27 20:13:16 · 111 阅读 · 0 评论 -
7-21模拟赛T2
题目地址 考点: 最大公约数的性质:满足辗转相除法的性质推广多元原创 2021-07-27 18:49:33 · 90 阅读 · 0 评论 -
NOIP常用技巧
因为cmath库中的log2函数效率不高,通常可以使用O(n)递推预处理出1-n这n种区间长度各自对应的k值(区间[x,y],k=log2(y-x+1)),具体的,设log[d]表示log2(d)向下取整,则log[d]=log[d/2]+1原创 2021-07-02 09:22:38 · 466 阅读 · 0 评论