您的位置:首页 > 编程语言 > Go语言

蓝桥杯--ALGO-2 最大最小公倍数

2015-03-08 14:00 176 查看
package zhwc.lqb.algo;

/*
*   算法训练 最大最小公倍数
时间限制:1.0s   内存限制:256.0MB

问题描述
已知一个正整数N,问从1~N中任选出三个数,他们的最小公倍数最大可以为多少。
输入格式
输入一个正整数N。
输出格式
输出一个整数,表示你找到的最小公倍数。
样例输入
9
样例输出
504
数据规模与约定
1 <= N <= 106。
*/

//最大最小公倍数	03-07 22:52
import java.util.Scanner;

public class ALGO_002 {

/**
* @param args
*/
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int n = scan.nextInt();
System.out.println(fun(n));
}

public static long fun(long n) {
if (n <= 2) {
return n;
} else if (n % 2 == 1) {
return n * (n - 1) * (n - 2);
} else {
if (n % 3 != 0) {
return n * (n - 1) * (n - 3);
} else {
return (n - 3) * (n - 1) * (n - 2);
}
}
}

public static int gcd(int a, int b) {
int r;
while (b != 0) {
r = b;
b = a % b;
a = r;
}
return a;
}

public static int lcm(int a, int b) {
return (a * b) / gcd(a, b);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息