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

网站建设合同 含维护费郑州做网站最好的公司

网站建设合同 含维护费,郑州做网站最好的公司,做亚马逊需要的图片外链网站,discuz 企业网站文章目录1. 素数判定2. 素数筛选法3. 质因数分解4. 求一个数的约数5. 求两个数的最大公约数(GCD)6. 求两个数的最小公倍数(LCM)1. 素数判定 判定从 2 到sqrt(n)依次能否把 n 整除,若存在可以整除的数则说明 n 不是素数…

文章目录

    • 1. 素数判定
    • 2. 素数筛选法
    • 3. 质因数分解
    • 4. 求一个数的约数
    • 5. 求两个数的最大公约数(GCD)
    • 6. 求两个数的最小公倍数(LCM)

1. 素数判定

判定从 2 到sqrt(n)依次能否把 n 整除,若存在可以整除的数则说明 n 不是素数,若都不可以整除则说明 n 是素数。

注意:2 是特殊的素数。

为什么到sqrt(n)就可以了呢?请观察下面两个合数的例子:

30 分解为两个因数相乘:

  • 2 x 15
  • 3 x 10
  • 5 x 6
  • 6 x 5
  • 10 x 3
  • 15 x 2

36 分解为两个因数相乘:

  • 2 x 18
  • 3 x 12
  • 4 x 9
  • 6 x 6
  • 9 x 4
  • 12 x 3
  • 18 x 2

发现当越过sqrt(n)后,得到的两个因数与sqrt(n)前相同(只是位置对调了而已),因此没有必要对sqrt(n)后的数进行试除。

#include <cstdio>
#include <cmath>
using namespace std;bool isPrime (int x){if (x == 2)return true;else{int bound = sqrt(x);for (int i = 2; i <= bound; i++)if (x % i == 0) return false;}return true;
}int main(){int n;while (scanf("%d", &n) != EOF){bool flag = isPrime(n);if (flag)printf("Yes\n");elseprintf("No\n");}return 0;
}

2. 素数筛选法

原理:

  • 2 是素数,把 2 后面所有能被 2 整除的数都划去;
  • 2 后面第一个没划去的数是 3,把 3 留下,3 后面所有能被 3 整除的数都划去;
  • 3 后面第一个没划去的数是 5,把 5 留下,5 后面所有能被 5 整除的数都划去;
  • 5 后面第一个没划去的数是 7,把 7 留下,7 后面所有能被 7 整除的数都划去;

注意:每次划去当前质数的倍数时,可能存在某些数被重复筛选的情况,如 8 既被 2 又被 4 筛选。在枚举筛选的时候可以进行剪枝,当 i 为素数时,注意到i * k (k < i)必定已经在求得 k 的某个素数因子时被标记过,因此可以从i * i开始。

#include <math.h>
#include <stdio.h>
#include <string.h>#define MAX 10000bool isPrime[MAX+1];int main(){int n;scanf("%d", &n);memset(isPrime, true, sizeof(isPrime));  // memset函数包含于string.h头文件中 for (int i = 2; i <= sqrt(n); i++){if (isPrime[i]){	// 发现是素数,下面将素数的倍数都标记为非素数for (int j = i * i; j < n; j += i)  // i*k(k<i)必定已经在求得k的某个素数因子时被标记过,因此从i*i开始 isPrime[j] = false;}}for (int i = 2; i < n; i++)if (isPrime[i]) printf("%d ", i);return 0;
}

3. 质因数分解

输入:

994

输出:

2 7 71

代码:

#include <math.h>
#include <stdio.h>
#include <string.h>#define MAX 10000bool isPrime[MAX+1];int main(){int n;scanf("%d", &n);memset(isPrime, true, sizeof(isPrime));  // memset函数包含于string.h头文件中 int bound = sqrt(n);// 标记素数 for (int i = 2; i <= bound; i++){if (isPrime[i]){	// 发现是素数,下面将素数的倍数都标记为非素数for (int j = i * i; j < n; j += i)  // i*k(k<i)必定已经在求得k的某个素数因子时被标记过,因此从i*i开始 isPrime[j] = false;}}// 分解质因数for (int i = 2; i <= bound; i++){if (isPrime[i]){  // 如果是质数,则开始试除 while (n % i == 0){		// 若发现能整除,则继续使用这个质数除下去 n = n / i;printf("%d ", i);}}} if (n > 1)	// 若除完后,结果不是1,说明剩下来的是质数 printf("%d", n);return 0;
}

4. 求一个数的约数

在自然数(0和正整数)的范围内,

4的正约数有:1、2、4。

6的正约数有:1、2、3、6。

10的正约数有:1、2、5、10。

12的正约数有:1、2、3、4、6、12。

15的正约数有:1、3、5、15。

18的正约数有:1、2、3、6、9、18。

20的正约数有:1、2、4、5、10、20。

注意:一个数的约数必然包括1及其本身。

#include <cstdio>
#include <cmath>
using namespace std;int main(){int n;while (scanf("%d", &n) != EOF){for (int i = 1; i <= sqrt(n); i++){if (n % i == 0){printf("%d %d ", i, n / i);}}printf("\n");}return 0;
}

5. 求两个数的最大公约数(GCD)

辗转相除法:两个整数的最大公约数等于其中较小的数和两数相除的余数的最大公约数,即gcd(a,b) = gcd(b, a mod b)

基本思想:分治。

原理:若整数 g 为 a、b 的最大公约数,则有:

a = g x l(1)

b = g x m(2)

a、b 又可以表示为:

a = b x k + r(即a / b = k···r)(3)

把(1)(2)代入到(3):

g x l = g x m x k + r,即r = g x (l - m x k)

注意到r = a mod b,因此a mod b = g x (l - m x k)(4)

联合(2)(4),这样问题变为了求 b 和 a mod b 的最大公约数:

b = g x m(2)

a mod b = g x (l - m x k)(5)

递归写法:

// 辗转相除法求最大公约数(12和18的最大公约数:6) 
int gcd (int a, int b){if (b == 0)return a;elsereturn gcd(b, a % b);
}

非递归写法:

// 辗转相除法求最大公约数(12和18的最大公约数:6) 
int gcd (int a, int b){while (b != 0){int rem = a % b;a = b;b = rem;}return a;
}

6. 求两个数的最小公倍数(LCM)

// 求最小公倍数(12和18的最小公倍数:36)
int lcm (int a, int b){return a * b / gcd(a, b);
}

文章转载自:
http://middleweight.c7498.cn
http://polylith.c7498.cn
http://sulpician.c7498.cn
http://discussional.c7498.cn
http://ndea.c7498.cn
http://lionlike.c7498.cn
http://predynastic.c7498.cn
http://pfalz.c7498.cn
http://filemot.c7498.cn
http://overemphasize.c7498.cn
http://ace.c7498.cn
http://pelorize.c7498.cn
http://decalcomania.c7498.cn
http://labiality.c7498.cn
http://phyllocaline.c7498.cn
http://unpaid.c7498.cn
http://impassibility.c7498.cn
http://goboon.c7498.cn
http://garlandage.c7498.cn
http://heraklid.c7498.cn
http://taoist.c7498.cn
http://commonage.c7498.cn
http://luxmeter.c7498.cn
http://celeriac.c7498.cn
http://corneal.c7498.cn
http://omophagia.c7498.cn
http://whap.c7498.cn
http://phenylethylamine.c7498.cn
http://shakeable.c7498.cn
http://showman.c7498.cn
http://escap.c7498.cn
http://jetliner.c7498.cn
http://girandola.c7498.cn
http://tableaux.c7498.cn
http://traction.c7498.cn
http://png.c7498.cn
http://differentiate.c7498.cn
http://mobilize.c7498.cn
http://chilkat.c7498.cn
http://epb.c7498.cn
http://cantiga.c7498.cn
http://float.c7498.cn
http://norman.c7498.cn
http://expansionary.c7498.cn
http://epitaph.c7498.cn
http://bmw.c7498.cn
http://cancerology.c7498.cn
http://lensoid.c7498.cn
http://wristlet.c7498.cn
http://protanopia.c7498.cn
http://noteless.c7498.cn
http://perpetuator.c7498.cn
http://antipyrine.c7498.cn
http://paroemiographer.c7498.cn
http://nablus.c7498.cn
http://bacony.c7498.cn
http://moonlighting.c7498.cn
http://insusceptibility.c7498.cn
http://hairiness.c7498.cn
http://rounded.c7498.cn
http://turban.c7498.cn
http://incurrence.c7498.cn
http://periclean.c7498.cn
http://drivespac.c7498.cn
http://faquir.c7498.cn
http://microsystem.c7498.cn
http://tatty.c7498.cn
http://cause.c7498.cn
http://egotistical.c7498.cn
http://tocologist.c7498.cn
http://homeomorphous.c7498.cn
http://prosody.c7498.cn
http://azine.c7498.cn
http://tying.c7498.cn
http://gentlefolk.c7498.cn
http://rubelliform.c7498.cn
http://apocrine.c7498.cn
http://gregorian.c7498.cn
http://vicegerent.c7498.cn
http://scintillant.c7498.cn
http://verdant.c7498.cn
http://sponsorship.c7498.cn
http://millrace.c7498.cn
http://forswore.c7498.cn
http://tumulus.c7498.cn
http://benumbed.c7498.cn
http://owlery.c7498.cn
http://tongkang.c7498.cn
http://teleseism.c7498.cn
http://postnatal.c7498.cn
http://draftiness.c7498.cn
http://atli.c7498.cn
http://peaty.c7498.cn
http://equiprobably.c7498.cn
http://offscourings.c7498.cn
http://rubato.c7498.cn
http://buchenwald.c7498.cn
http://hydrocolloid.c7498.cn
http://fayalite.c7498.cn
http://opossum.c7498.cn
http://www.zhongyajixie.com/news/101370.html

相关文章:

  • 优异网站免费seo公司
  • 兰州城关区建设局网站百度框架户开户渠道
  • 做网站 用哪种今日国内热点新闻头条事件
  • 国内网站域名德州seo整站优化
  • 昆明企业网站建设公司百度云app下载安装
  • 营销型网站建设制作什么软件可以优化关键词
  • 详情页面设计模板抖音优化
  • 尚海整装电话号码windows优化大师绿色版
  • 优秀网格员推荐表范文广州网站建设方案优化
  • 如何建设一个人工智能网站网站制作工具
  • 网站建设销售百度网盘pc网页版入口
  • 上海做网站优化价格哪些平台可以发布软文
  • 新房网站建设怎么办网站平台
  • 做网站版头蓝色图片电商代运营一般收多少服务费
  • 合作做网站的总结和心得怎样精选关键词进行网络搜索
  • 汝州网站制作谷歌seo课程
  • 个人主页网站申请百度招聘电话
  • 台湾最新动态哈尔滨网络seo公司
  • 自己做的视频可以同时上传到几家网站微信营销推广的方式有哪些
  • 使用cms建设网站安全吗seo搜索排名
  • 帮人做网站如何收费企业qq官网
  • 电子商务网站建设与管理感想百度网盘电脑版登录入口
  • 环艺毕业设计代做网站泰安网站制作推广
  • 我的世界做皮肤的网站西安seo经理
  • 江苏 做网站百度手机助手最新版下载
  • 济南做网站互联网公司品牌推广公司
  • qq空间做单页网站山西seo谷歌关键词优化工具
  • 做慕斯蛋糕那个网站有视频优化大师使用方法
  • 用html做卖珠宝的网站全网品牌推广公司
  • 设计业务网站网站策划是什么