NYOJ 977 最大的最小公倍数

来源:互联网 发布:数据挖掘工具分类 编辑:程序博客网 时间:2024/05/01 23:19

最大的最小公倍数

时间限制:1000 ms  |  内存限制:32768 KB
难度:2
描述
  高中时我们对最小公倍数就已经很熟悉了,相信你很快就可以把这个问题解决。这次的问题是:给你一个正整数n,任取三个不大于n的正整数,取法不限,每个数可取多次,使得取到的这三个数的最小公倍数在所有取法中是最大的。
  例如当n = 5 时,不大于5的数为1、2、3、4、5。则应该选3、4、5三个数,它们的最小公倍数是60,在所有取法中是最大的。因此我们得到结果60。
  是不是很简单?抓紧时间 AC 吧。
输入
  输入包含多组测试数据。每组数据为一个正整数n(1≤n≤10^6)。
输出
  对每组测试数据,输出一个整数,代表所有可能取法中,选出的三个数的最小公倍数的最大值。
样例输入
57
样例输出
60210
来源
蓝桥杯



AC代码:

#include<cstdio>#include<algorithm>using namespace std;typedef long long LL;int main() {LL N; while(~scanf("%lld",&N)) {    LL ans;    if(N<3) ans=N;    else {if(N%2==0) {if(N%3) ans=N*(N-1)*(N-3);else ans=(N-1)*(N-2)*(N-3);}else  ans=N*(N-1)*(N-2);}printf("%lld\n",ans); }return 0;} 


0 0