您的位置:首页 > 其它

题目5:找出最小的能被1-20中每个数整除的数。

2015-06-23 22:25 239 查看
2520是最小的能被1-10中每个数字整除的正整数。

最小的能被1-20中每个数整除的正整数是多少?

 

原题目链接:Problem 5

分解质因数,不多说

public class Problem5 {

private static HashSet<Integer> set = new HashSet<Integer>();

public static void main(String[] args) {

for (int i = 1; i <= 20; i++) {
getPrime(i);
}

Iterator<Integer> it = set.iterator();
int res = 1;
while (it.hasNext()) {
int prime = it.next();
res = prime * res;
}

System.out.println(res);

}

private static void getPrime(int value) {

if (isPrime(value)) {
set.add(value);
} else {
for (int i = 2; i < value / 2; i++) {

int remainder = value % i;

if (remainder == 0 || isPrime(i)) {
set.add(i);
}
}
}

}

public static Boolean isPrime(int value) {
Boolean flag = true;
for (int i = 2; i <= Math.sqrt(value); i++) {
if (value % i == 0) {
flag = false;
break;
}
}
return flag;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: