- 博客(2)
- 收藏
- 关注
原创 求两个数的最大公约数和最小公倍数(自用)
首先用较小的数去除较大的数,然后再用出现的余数(第一余数)去除原来的除数,接着用新出现的余数(第二余数)去除第一余数,如此反复,直到最后的余数为0。由于n和m都能被c整除,因此r也能被c整除 ---> r = n - km = ac - kbc = (a - kb)c。在输出时修改为:gcd(n,m)*(n/gcd(n,m))*(m/gcd(n,m)假设两个数n和m(n > m),它们的最大公约数为c,存在整数a和b,使得n = ac和m = bc。最大公因数:gcd*(n/gcd)*(m/gcd)
2025-02-11 21:48:38
216
原创 素数--求1-n之间有多少个素数(自用)
当i=2时被筛一次,当i=3时被筛一次,当i=5,6,8等等又会被筛一次,重复多次的被筛选,而欧拉筛选则是解决上述弊端的。几种方法之间关联性比较强,步步优化,建议从头看起,不要一步见底!问题:输入正整数N,求1~N范围内素数的个数,2≤N≤1,000,000。3.埃氏筛法(在朴素筛法基础上进行)120 在埃氏筛选中存在多次被筛。4.欧拉筛法(最快)
2025-02-09 23:05:16
452
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人