当前位置: 首页 > news >正文

北京活动网站制作自己如何建立网站

北京活动网站制作,自己如何建立网站,黄骅贴吧桃花路,做网站创业怎么样数论&#x1f388; 筛质数 最普通的筛法O(nlogn)&#xff1a; void get_primes2(){for(int i2;i<n;i){if(!st[i]) primes[cnt]i;//把素数存起来for(int ji;j<n;ji){//不管是合数还是质数&#xff0c;都用来筛掉后面它的倍数st[j]true;}} } 诶氏筛法 O(nloglogn)&#…

数论🎈

筛质数

最普通的筛法O(nlogn):
void get_primes2(){for(int i=2;i<=n;i++){if(!st[i]) primes[cnt++]=i;//把素数存起来for(int j=i;j<=n;j+=i){//不管是合数还是质数,都用来筛掉后面它的倍数st[j]=true;}}
}

诶氏筛法 O(nloglogn):

void get_primes1(){for(int i=2;i<=n;i++){if(!st[i]){primes[cnt++]=i;for(int j=i;j<=n;j+=i) st[j]=true;//可以用质数就把所有的合数都筛掉;}}
}

线性筛O(n)

void get_primes(){//外层从2~n迭代,因为这毕竟算的是1~n中质数的个数,而不是某个数是不是质数的判定for(int i=2;i<=n;i++){if(!st[i]) primes[cnt++]=i;for(int j=0;primes[j]<=n/i;j++){//primes[j]<=n/i:变形一下得到——primes[j]*i<=n,把大于n的合数都筛了就//没啥意义了st[primes[j]*i]=true;//用最小质因子去筛合数//1)当i%primes[j]!=0时,说明此时遍历到的primes[j]不是i的质因子,那么只可能是此时的primes[j]<i的//最小质因子,所以primes[j]*i的最小质因子就是primes[j];//2)当有i%primes[j]==0时,说明i的最小质因子是primes[j],因此primes[j]*i的最小质因子也就应该是//prime[j],之后接着用st[primes[j+1]*i]=true去筛合数时,就不是用最小质因子去更新了,因为i有最小//质因子primes[j]<primes[j+1],此时的primes[j+1]不是primes[j+1]*i的最小质因子,此时就应该//退出循环,避免之后重复进行筛选。if(i%primes[j]==0) break;}}}

试除法判断质数

输入n表示要判断的n个数,接下来输入n个数,判断其是否为质数

#include<bits/stdc++.h>
using namespace std;
int n;
bool isprime(long long a){if(a==1){return 0;}else if(a==2){return 1;}for(int i=2;i<=a/i;i++){//不要用开方或者i*i,开方函数较慢,i*i会越界if(a%i==0){return 0;}}return 1;
}
int main(){cin>>n;while(n--){long long a;cin>>a;if(isprime(a)) cout<<"Yes"<<endl;else cout<<"No"<<endl;}

分解质因数

解题思路:
  • x 的质因子最多只包含一个大于 根号x 的质数。如果有两个,这两个因子的乘积就会大于 x,矛盾。
  • i 从 2 遍历到 根号x。 用 x / i,如果余数为 0,则 i 是一个质因子。
  • s 表示质因子 i 的指数,x /= i 为 0,则 s++, x = x / i 。
  • 最后检查是否有大于 根号x 的质因子,如果有,输出。
#include <iostream>
#include <algorithm>using namespace std;void divide(int x)
{for (int i = 2; i <= x / i; i ++ )//i <= x / i:防止越界,速度大于 i < sqrt(x)if (x % i == 0)//i为底数{int s = 0;//s为指数while (x % i == 0) x /= i, s ++ ;cout << i << ' ' << s << endl;//输出}if (x > 1) cout << x << ' ' << 1 << endl;//如果x还有剩余,单独处理cout << endl;
}
{
int main()
{int n;cin >> n;while (n -- ){int x;cin >> x;divide(x);}return 0;
}

http://www.dt0577.cn/news/13302.html

相关文章:

  • 百色做网站百度热搜榜排行
  • 企业官方网站如何做蓝v认证武汉网络推广自然排名
  • 网站建设的价值是什么网络推广服务外包
  • 老域名重新做网站seo关键词排名优化报价
  • 国外销售网站怎样建设怎么让百度搜出自己
  • 京东网站建设过程百度竞价最低点击一次多少钱
  • 顺德网站设计成人用品推广网页
  • 打码网站怎么做品牌宣传文案范文
  • 门户网站源码入驻app开发费用
  • 做色情网站需要多少钱广告图片
  • 排版设计说明系统优化大师
  • 免费网站建设知识百度网络推广怎么收费
  • 做网站加模块长治seo顾问
  • 想建一个自己的网站北京seo优化wyhseo
  • 视频直播网站建设费用百度一下你就知道官网网页版
  • 深圳福田网站优化网络营销培训学校投资网站建设方案
  • 主做收影视出版的小说网站软文
  • 网站建站案东营优化路网
  • 学校网站怎么查询录取长沙网站制作推广
  • 设计网站包含的功能模块网络推广员的前景
  • 可以免费做宣传的网站长春网站制作系统
  • 做网站时需要注意什么semester是什么意思
  • 茶山东莞网站建设推广引流话术
  • 济南做网站个人合肥seo外包平台
  • 中山专业门户网站制作咨询做高端网站公司
  • 网站开发公司业务员培训如何点击优化神马关键词排名
  • 私人为别人做网站违法问题荆门网站seo
  • 在线做图网站如何提高自己的营销能力
  • 网页设计图片排版怎么设置合肥百度搜索优化
  • 商城网站建站广东省人大常委会