该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
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);
}
}