首页 > 其他分享 >2/23质数

2/23质数

时间:2024-02-23 21:22:58浏览次数:20  
标签:标记 int 质数 23 素数 整除 合数

质数:在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数

   小于等于N大概有lgN个质数

质数的判定

试除法 判断一个数N:O(√N)

扫描2-√N之间所有整数,一次检查它们能否整除N

质数筛:求出小于等于n的所有质数,特判v[1]=1

i从小到大,如果i没有被前面的数(比它小的数)标记为合数,那i就是素数,加入素数列表

用已经筛选出来的素数去过滤所有能够被它整除的数

埃及筛 O(NloglogN)

扫描2-N,若这个数未被标记,则把它的倍数标记为合数 

->会重复标记合数 

void shai()
{
  v[1]=1; for(int i=2;i<=n;i++) if(v[i]) continue; for(int j=i;j*i<=n;j++) v[i*j]=1;//合数 }

 

欧拉筛 O(N)

用已经筛选出来的素数去过滤所有能够被它整除的数,使得每个合数只会被它的最小质因子筛一次(一开始i很小的时候一次能筛掉很多素数,后面超过n/2之后就几乎不用做什么事情了)

用当前的数×之前的筛出来的素数,这个数即为合数

void shai()
{
    v[1]=1;
    cnt=0;
    for(int i=2;i<=maxn;i++)
    {
        if(!v[i])
            prime[++cnt]=i;
        for(int j=1;j<=cnt&&i*prime[j]<=maxn;j++)
        {
            v[i*prime[j]]=1;
            if(i%prime[j]==0)
                break; 
        }
    }
}

莫名其妙的一步...

if(i%prime[j]==0)
       break; 

设当前数为a=b*c 

若b是a的最小质因数,c的最小质因数比不小于b,保证了c筛掉前a不会被筛掉

 

标签:标记,int,质数,23,素数,整除,合数
From: https://www.cnblogs.com/blogzy/p/18030386

相关文章

  • 20240223【省选】模拟
    挂30分,还有40分不好说。T2挂的10分应该是字符串常数大,以及那个求LCA珂以优化掉但我人傻没搞。T3的20分就是纯粹脑抽。以后少用stringT1结论题,想错了以为很简单,实际上也很简单,但是我菜。设\(f(x)\)为\(x\)的期望质量,打表使用大眼观察法猜不出这个性质:如果\(x\)为一些质数......
  • 2.23测试
    T1:绑腿跑题目描述HZOI有N个小盆友,每天他们都会按同样的站位顺序进行各项体育活动。一天,HZOI的首领决定组织一个“绑腿跑”的比赛。为了安全起见,首领会从他们当前的队列中选出一个连续的区间来进行这个比赛。但是,众所周知,如果参加比赛的小盆友要玩得开心,而且安全的话,那么参......
  • 2023年年度总结
    一年时间总感觉做不完很多事情,能够持续连续不间断做一件事情真的很难,2023年在出差半年的时间中跌宕度过,有收获也有辛酸,对所在公司充满迷茫,职业发展更是不知道做的对不对。年龄每加一岁,就越是充满焦虑不安,到底要往哪边发力,要说2023年的经历,其实那就是做了一些事情但是也没有做好一......
  • 2.23读《构建之法》有感
    《构建之法》是一本由乔尔·斯泰恩编写的计算机科学领域的经典之作。在这本书中,斯泰恩深入探讨了软件开发的核心原则和技术方法,以及构建高质量软件系统的实践指南。阅读完《构建之法》后,我对软件开发有了更深入的理解,并获得了以下几点感悟:1.模块化与抽象化的重要性:书中强调了将......
  • 02-23整理 MySQL主从库搭建过程
    主从库搭建需要主库从库均有配置,井号#之后部分为注释主库:#创建数据同步用户账号,自行替换变量createuser${slaveuser}@'${ip}'identifiedby'${password}';grantreplicationslaveon*.*to${slaveuser}@'ip';#查看用户被授权限:showgrantsfor${slaveuser}@'ip';......
  • AtCoder WTF 2019 B Multiple of Nine/南外集训 2024.2.23 T1
    给定\(q\)个区间\(\{[l_i,r_i]\}\),计算满足条件的长度为\(n\)的十进制数码串\(S\)的个数\(\bmod10^9+7\):\(\foralli\in[1,q],num(S[l_i,r_i])\equiv0\pmod9\)。其中\(num(T)\)表示数码串\(T\)代表的整数,\(T[a,b]\)表示子串\(T_aT_{a+1}\dotsT_b\)......
  • 文档控件DevExpress Office File API v23.2新版亮点 - 支持SVG
    DevExpressOfficeFileAPI是一个专为C#,VB.NET和ASP.NET等开发人员提供的非可视化.NET库。有了这个库,不用安装MicrosoftOffice,就可以完全自动处理Excel、Word等文档。开发人员使用一个非常易于操作的API就可以生成XLS,XLSx,DOC,DOCx,RTF,CSV和SnapReport等企业级文......
  • 2024省选模拟26联测23
    T1首先,存在一个显然的事情:若集合\(S\)满足要求,那么\(S\)的任何子集也满足要求。还有一个比较显然的事实:对于一个合法的集合,其每个元素的位置一定在范围的交内。难道要用奇怪的容斥???但是好像根本容斥不了。。。。哈哈。能不能考虑减去不合法的状态?也许可以连边找完全图???好......
  • [newstarctf2023] --RE wp
    AndroGenshin:rc4加密表,base64换表:脚本梭就行username=b"genshinimpact"base64_table=[125,239,101,151,77,163,163,110,58,230,186,206,84,84,189,193,30,63,104,178,130,211,        164,94,75,16,32,33,193,160,120,......
  • Codeforces Round 923 (Div. 3)
    A.MakeitWhite#include<bits/stdc++.h>usingnamespacestd;usingi32=int32_t;usingi64=longlong;usingi128=__int128;usingldb=longdouble;#defineinti64usingvi=vector<int>;usingpii=pair<int,int>;usingvii......