![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数论
文章平均质量分 56
SaiIing
这个作者很懒,什么都没留下…
展开
-
请输出 2^32 以内的所有素数
筛2^32以内的素数原创 2022-09-15 13:43:17 · 582 阅读 · 2 评论 -
数论复习笔记
线性筛int Mark[MAXSIZE]; int prime[MAXSIZE]; //判断是否是一个素数 Mark 标记数组 index 素数个数 int Prime(){ int index = 0; for(int i = 2; i < MAXSIZE; i++){ //如果未标记则得到一个素数 if(Mark[i] == 0) prime[++index] = i; //标记目前得到的原创 2022-05-03 13:15:56 · 252 阅读 · 0 评论 -
行列式与matrix_tree
目录相关资料:Matrix-Tree定理和模意义下的矩阵行列式:行列式:自己的理解:(1)n阶行列式定义:(2)行列式相关拓展:(3)行列式性质题目链接:【CQOI2018】社交网络[End]相关资料:Matrix-Tree定理和模意义下的矩阵行列式:https://blog.csdn.net/u013010295/article/details/4...原创 2019-04-03 22:24:46 · 540 阅读 · 0 评论 -
BSGS -- 【CQOI2018】破解D-H协议
BSGSbsgs算法,又称大小步算法(某大神称拔山盖世算法)。主要用来解决 A^x=B(mod C)(C是质数),都是整数,已知A、B、C求x。具体步骤如下: 先把x=i*m-j,其中m=ceil(sqrt(C)),(ceil是向上取整)。这样原式就变为A^(i*m-j)=B(mod C), 再变为A^j×B=A^(m*i) (mod C)。枚举j(范围0-m),将A^j×B存入ha...原创 2019-04-02 21:34:20 · 178 阅读 · 0 评论 -
线性筛的原理
线性筛初始时,假设全部都是素数,当找到一个素数时,显然这个素数乘上另外一个数之后都是合数把这些合数都筛掉,即算法名字的由来。但仔细分析能发现,这种方法会造成重复筛除合数,影响效率。比如10,在i=2的时候,k=2*15筛了一次;在i=5,k=5*6 的时候又筛了一次。所以,也就有了快速线性筛法。intMark[MAXSIZE];intprime[MAXSIZE];...原创 2019-04-02 21:12:25 · 12654 阅读 · 8 评论