2520是能被1到10整除的最小数字,找出能被1到20整除的最小数字。
解决方案 »
- 请教:有人知道Audio Scrobbler API吗?怎么使用和编程?
- 请教个界面上用线程处理的问题
- java 读XML文件的困扰
- 如何获取本机所设置的子网掩码和网关?(不赞同从ipconfig解析的方法)
- java进阶问题!
- File类对文件属性操作的问题
- 我操作数据库提示“Before start of result set”是怎么回事?
- tomcat开发的插件支持热部署,怎么做
- 咨询各位大侠一个关于构造器的基础问题
- 你们看是不是可以这样理解:在用来进行两个对象的比较时,==操作符用来比较两个对象的引用地址,而equals()用来比较两个对象的值。
- 有关JVM的日志分析,大家来看看,给点意见,3Q~~~
- set值时报空指针
public class Test {
private static int TOTAL = 20;
private static int[] PRIMEs = {2, 3, 5, 7, 11, 13, 17, 19};
public static void main(String[] args) {
long result = 1;
int[] middleResult = new int[TOTAL];
boolean flag = false; for (int i = 0, j; i < PRIMEs.length; i++) {
for (j = 0; j < TOTAL; j++) {
if (middleResult[j] == 0) middleResult[j] = j + 1;
if (middleResult[j] %PRIMEs[i] == 0 ) {
middleResult[j] /= PRIMEs[i];
flag = true;
}
}
if (flag) {
result *= PRIMEs[i];
i--;
flag = false;
}
}
System.out.println(result);
}
}Result = 232792560
public static void main(String[] args) { int[] nums = {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20};
System.out.println(minComMuNum(nums));
}
public static int minComMuNum(int[] nums){
int result = 1;
for (int i = 0; i < nums.length; i++) {
result = getMCM(result, nums[i]);
}
return result;
}
public static int getMCD(int i, int j)
{
return j == 0 ? i : getMCD(j, i % j);
} public static int getMCM(int i, int j)
{
return i / getMCD(i, j) * j;
}
2, 3, 5, 7, 11, 13, 17, 19
};
int[] exponents = new int[primes.length];
long result = 1;
int limit = 20;
for (int n = 2; n <= limit; n++) {
for (int i = 0; i < primes.length; i++) {
int x = n;
int e = 0;
int p = primes[i];
if (p >= x) {
break;
}
do {
e++;
x /= p;
if (e > exponents[i]) {
result *= p;
exponents[i] = e;
}
} while (x % p == 0);
}
}
System.out.println(Arrays.toString(exponents));
System.out.println(result);
public class Test {
public static void main(String args[]) throws IOException {
int i=2*2*2*2*3*3*5*7*11*13*17*19;
System.out.println(i);
}
}232792560