Project Euler 09 找出 2百万 以内的质数和
来源:互联网 发布:用友u8用什么数据库 编辑:程序博客网 时间:2024/06/04 01:22
解题思路,先找质数,放在列表里,然后列表求和,注意 int 形式的变量 储存范围大概 2 亿左右,要小心数据溢出。
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Collections;namespace ProjectEuler10{ class Program { static void Main(string[] args) { int t1 = Environment.TickCount; //==================================找出num以内的所有奇数========================================= int num = 2000000; // The range in which we find prime numbers BitArray isPrime = new BitArray(num,true); //默认所有的数都是质数 var numlist = Enumerable.Range(1, num).ToList(); List<int> PrimeList = new List<int>(){}; for (int i = 2; i < num; i++) { if (isPrime[i]) // 如果是质数的话,就加入质数列表 { PrimeList.Add(i); } for (int j = 0; j < PrimeList.Count()&&i *PrimeList[j]<num; j++) // 关键点1:一个数乘以比他小的质数,得到的一定是合数,并且要保证乘积小于我们要找的最大值 { isPrime[i * PrimeList[j]] = false; } } //==============================求出奇数的和===================================== decimal sum = 0; foreach (var item in PrimeList) { sum += item; } //PrimeList.ForEach(Console.WriteLine); Console.WriteLine("sum is " + sum); Console.WriteLine("Tid"+(Environment.TickCount-t1)); Console.ReadLine(); } }}
0 0
- Project Euler 09 找出 2百万 以内的质数和
- 100以内的质数及100以内质数的和
- 编写一个找出100以内质数的程序
- 求10000以内所有质数的和
- 求N以内所有质数的和
- 质因数分解和N以内的质数
- 1~100以内的质数和
- python实现100以内的质数和非质数
- 1000以内的质数
- 找出2->N之间的所有质数
- 找出2-100之间的质数
- 求一百以内的质数
- 一百万以内的质数表
- 求100以内的质数
- 一千以内的质数表
- 列出100以内的质数
- 10000以内的质数表
- 巧记100以内的质数
- CSS CONTENT
- AOSP项目环境搭建
- TortoiseGit安装与配置
- 我学习GIT的风雨历程
- Swift - 常用 - 加密/解密
- Project Euler 09 找出 2百万 以内的质数和
- STM32F1xx 多路ADC 使用DMA转换结果顺序错乱问题
- API接口认证
- 从mongoDB导出数据
- android实现热更新,打补丁,进行差异文件修复
- RadioGroup和CheckBox
- 修改默认上传文件样式
- 前后端分离架构
- ARM trusted firmware - auth framework