日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

【FCC】Sum All Primes求质数的和

發布時間:2023/11/21 综合教程 40 生活家
生活随笔 收集整理的這篇文章主要介紹了 【FCC】Sum All Primes求质数的和 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

題目:
求小于等于給定數值的質數之和。
質數是一個大于1的整數,
只有 1 和它本身兩個約數的數叫質數。例如,2 是質數,因為它只能被 1 和 2 整除。1 不是質數,因為它只能被自身整除。

給定的數不一定是質數。

要求:

sumPrimes(10) 應該返回一個數字。
sumPrimes(10) 應該返回 17。
sumPrimes(977) 應該返回 73156。

代碼:

<script type="text/javascript">
	function sumPrimes(num) {
		var p = [];
		for (var i = 2; i <= num; i++) {
			var flag = true;
			for (var j = 2; j < i; j++) {
				if (i % j === 0) {
					flag = false;
					break;
				} //只有有其他約數就可以跳出循環了
			}
			if (flag) {
				p.push(i);
			}
		}
		return p.reduce(function(sum, cur) {
			return sum + cur;
		});
	}
	sumPrimes(977);
</script>

不過求質數之和其實有方法上的簡化,一個數若可以進行因數分解,那么分解時得到的兩個數一定是一個小于等于sqrt(n),一個大于等于sqrt(n),據此,上述代碼中并不需要遍歷到n-1,遍歷到sqrt(n)即可,因為若sqrt(n)左側找不到約數,那么右側也一定找不到約數

作者:zooeydotmango
鏈接:https://www.jianshu.com/p/66220cb7977d

總結

以上是生活随笔為你收集整理的【FCC】Sum All Primes求质数的和的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。