最小公倍数
题目大意:给定 𝑛 ,你需要找到三个 [1,𝑛] 中的正整数,使得它们的最小公倍数最大
考虑n的奇偶情况
n如果为奇数,那么显然当前\(n,(n-1),(n-2)\)互质,我们直接乘起来他们三个就好
n如果为偶数,那么显然\(n,(n-2)\)存在公约数2,我们就考虑往后面挪一个,换成\(n-3\)
但是如果n本身就是三的倍数怎么办?
那么我们就把n变成\(n-1\)(奇数)这样\((n-1)\times (n-2)\times (n-3)\)就是最优解了
那就不如
代码如下:
| 1 | 
 | 
题目大意:给定 𝑛 ,你需要找到三个 [1,𝑛] 中的正整数,使得它们的最小公倍数最大
考虑n的奇偶情况
n如果为奇数,那么显然当前\(n,(n-1),(n-2)\)互质,我们直接乘起来他们三个就好
n如果为偶数,那么显然\(n,(n-2)\)存在公约数2,我们就考虑往后面挪一个,换成\(n-3\)
但是如果n本身就是三的倍数怎么办?
那么我们就把n变成\(n-1\)(奇数)这样\((n-1)\times (n-2)\times (n-3)\)就是最优解了
那就不如
代码如下:
| 1 | #include <bits/stdc++.h> |