Smallest Common Multiple
来源:互联网 发布:软件系统推广验收 编辑:程序博客网 时间:2024/06/05 00:11
找出能被两个给定参数和它们之间的连续数字整除的最小公倍数。
范围是两个数字构成的数组,两个数字不一定按数字顺序排序。
例如对 1 和 3 —— 找出能被 1 和 3 和它们之间所有数字整除的最小公倍数。
注意:
这里涉及到经典算法:求最大公约数gcd(greatest common divisor)和最小公倍数scm(smallest common multiple)
gcd(最大公约数)算法过程(欧几里德算法/辗转相除法)
有两整数a和b:
① a%b得余数c,即c=a%b
② 若c=0,则b即为两数的最大公约数
③ 若c≠0,则a=b,b=c,再回去执行①
scm算法(最小公倍数算法)
最小公倍数=两整数的乘积÷最大公约数,即scm=sqrt(a*b)/gcd(a,b)
function smallestCommons(arr) { function gcd(val1,val2){ if(val1%val2===0){ return val2; }else{ return gcd(val2,val1%val2); }} arr=arr.sort(function(a,b){ return a-b; }); var val=arr[0]; for(var i=arr[0]+1;i<=arr[1];i++){ val*=i/gcd(val,i); } return val;}smallestCommons([1,5]);
阅读全文
0 0
- Smallest Common Multiple
- Smallest Common Multiple
- Smallest Common Multiple
- Smallest multiple
- Problem 5:Smallest multiple
- PE 5 Smallest multiple
- Problem 5 Smallest multiple
- Smallest Multiple by GoLang
- (Problem 5)Smallest multiple
- 5 Smallest multiple - Project Eulder
- Project Euler 005 Smallest multiple
- Common Multiple and Least Common Multiple(LCM)
- HDU1019 Least Common Multiple
- hdu1019Least Common Multiple
- Least Common Multiple
- 1019:Least Common Multiple
- 1019 Least Common Multiple
- hdu_2028_Lowest Common Multiple Plus
- Laravel 5.4 官方文档摘记:中间件
- OpenCV嵌入式图像处理(三)使用Jetpack安装OpenCV4Tegra
- Python MySQL 1054 "Unknown column '\xe7\x88\xb1\xe6\x83\x85' in 'where clause'"错误分析
- 自己写的一个recycleview下拉加载
- php删除二维数组中的重复值
- Smallest Common Multiple
- Java的特殊类——数组对象的类
- Java学习笔记——数组
- Ubuntu常用命令大全
- [dts]DTS实例分析
- CSS -- 图片宫格不变形显示
- provider: SQL Network Interfaces, error: 26
- iOS安装cocoapods卡在Creating search index for spec repo 'master'..
- linux命令