java 素数乘积,求助2424379123 = 两个素数的乘积,求这两个素数?
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
import java.util.ArrayList;
import java.util.Date;
public class Test {
static ArrayList list = new ArrayList();
/**
* 初始化素数表
* @return
*/
public static ArrayList initArrayList() {
list.add(2);
list.add(3);
list.add(5);
list.add(7);
return list;
}
/**
* 判断n是不是素数
* @param n
* @return true或false
*/
public static boolean isPrime(int n) {
boolean flag = true;
int temp = (int) Math.sqrt(n);
for (int i = 0; i < list.size(); i++) {
if (i > temp)
break;
if (n % list.get(i) == 0) {
flag = false;
break;
}
}
return flag;
}
public static void main(String[] args) {
long startTime = new Date().getTime();
list = initArrayList();
for (int i = 11; i < 49238; i += 2) {
if(isPrime(i)){
list.add(i);
if(2424379123L % i == 0){
System.out.println(i +" " + 2424379123L / i);
}
}
}
long endTime = new Date().getTime();
long usedTime = endTime - startTime;
System.out.println(usedTime);
}
}
总结
以上是生活随笔为你收集整理的java 素数乘积,求助2424379123 = 两个素数的乘积,求这两个素数?的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 计算机控制面板图标显示,Win8桌面如何
- 下一篇: 计算机仿真随机数生成,伪随机数生成器研究