半质数
来源:互联网 发布:电视棒在淘宝上搜不到 编辑:程序博客网 时间:2024/04/27 18:44
//质数是大家熟知的概念,我们定义一个半质数的概念:如果一个数恰好是两个质数的乘积(可以相同),
//则称它为半质数。前几个半质数是 4, 6, 9, 10, 14, 15, 21, 22, 25, 26。我们的问题是,输入两个正整数x<=y,
//问[x,y]之间有多少个半质数? 输入:x,y 输出:[x,y]之间有多少个半质数。 输入数据范围 1<=x<=y<=2000000。
//祝所有挑战的Heros 2014年情人节、元宵节快乐。
麻烦大神优化一下代码,效率好低啊我的,3秒以内就好
//则称它为半质数。前几个半质数是 4, 6, 9, 10, 14, 15, 21, 22, 25, 26。我们的问题是,输入两个正整数x<=y,
//问[x,y]之间有多少个半质数? 输入:x,y 输出:[x,y]之间有多少个半质数。 输入数据范围 1<=x<=y<=2000000。
//祝所有挑战的Heros 2014年情人节、元宵节快乐。
using System;public class Test{ public static int howmany(int x, int y) { int count = 0; for (int i = x; i < y; i++) { if (isSemiPrimer(i)) { count++; } } return count; } public static void Main() { DateTime dateStart = DateTime.Now; Console.WriteLine(howmany(1, 2000000)); TimeSpan span = DateTime.Now - dateStart; Console.WriteLine(span.TotalSeconds.ToString()); } public static bool isPrime(int x) { for (int i = 2; i <= Math.Sqrt((double)x); i++) { if (x % i == 0) { return false; } } return true; } public static bool isSemiPrimer(int x) { for (int i = 2; i <= Math.Sqrt((double)x); i++) { if (x % i == 0) { return isPrime(x / i) && isPrime(i); } } return false; }}
麻烦大神优化一下代码,效率好低啊我的,3秒以内就好
0 0
- 半质数
- 半质数的个数
- 半质数的个数
- 质数
- 质数
- 质数
- 质数
- 质数
- 质数
- 质数
- 质数
- 质数
- 质数
- 质数
- 质数
- 质数
- 质数
- 质数
- HDU 1023 高精度 卡特兰数
- elance 兼职手册
- 代码究竟能写多长
- 通过jstat、jmap对java程序进行性能调优
- android,内容提供者,短信发送
- 半质数
- SRM 599 D1L1:BigFatInteger,math
- Python 2.7.4的mimetypes.py bug修复
- C++类型转换关键字(*_cast)
- iOS- iOS 和 Android 的后台推送原理各是什么?有什么区别?
- 我的《鸟哥的Linux私房菜》笔记(一)初窥
- 1010 Radix (25)
- Windows7下查看CRUX 3.0虚拟机里面的linux ext2和ext3文件系统教程
- 我的《鸟哥的Linux私房菜》笔记(二)Linux的档案权限与目录配置