描述
已知一个正整数 N,问从 1−N(2<N<103)中任选出三个数,他们的最小公倍数最大可以为多少。
输入描述
输入一个正整数 N。
输出描述
输出一个整数,表示你找到的最小公倍数。
提示
这道题没有太多的技巧,要想做出来 就必须自己做一遍,因为这种题有很多做法,你有你的做法我有我的做法
#include <stdio.h>
long long FindMax(long long N){
long long res;
if(N <= 2)
return N;
if(N % 2 != 0){ //第一种情况,N为奇数时,最大最小公倍数为N * (N - 1) * (N - 2)
res = N * (N - 1) * ( N - 2);
}
else{
if(N % 3 != 0) //第二种情况
res = N *(N - 1) * (N - 3);
else //第三种情况
res = (N - 1) * (N - 2)* (N - 3);
}
return res;
}
int main(){
long long N;
scanf("%lld",&N);
printf("%lld",FindMax(N));
return 0;
}
7355





