SDNU 1464 最大最小公倍數

2021-09-10 23:03:37 字數 873 閱讀 3119

description

問題描述 已知乙個正整數n,問從1~n中任選出三個數,他們的最小公倍數最大可以為多少。

input

輸入乙個正整數 n(1<=n<=10^6)

output

輸出乙個整數,表示你找到的最小公倍數

sample input

9sample output

504要是遍歷的話o(n^3)肯定超時了,這時就要同數學方法了。

眾所周知,兩個數互質的話,這兩個數的乘積就是它們的最小公倍數

模擬,如果三個數互質的話,這三個數的乘積就是他們的最小公倍數

這就要找三個數如何互質:

如果n是奇數,那麼n,n-1,n-2互質;

如果n是偶數,有兩種情況:

如果n能被3整除,那麼n-1,n-2,n-3互質(自己動動腦筋想想為什麼)。

否則,n,n-1,n-3,互質。

#include

#include

#include

#include

#include

#include

using

namespace std;

typedef

long

long ll;

intmain()

else

cout<(n-1)*

(n-2

)<}return0;

}

最大最小公倍數

時間限制 1 sec 記憶體限制 128 mb 提交 125 解決 4 提交 狀態 討論版 題目描述 已知乙個正整數n,問從1 n中任選出三個數,他們的最小公倍數最大可以為多少。輸入 每個測試點 輸入檔案 存在多組測試資料。每個測試點的第一行為乙個整數task,表示測試資料的組數。在一組測試資料中 ...

最大最小公倍數

問題描述 已知乙個正整數n,問從1 n中任選出三個數,他們的最小公倍數最大可以為多少。輸入格式 輸入乙個正整數n。輸出格式 輸出乙個整數,表示你找到的最小公倍數。樣例輸入 9樣例輸出 504資料規模與約定 1 n 106。include include include using namespace...

最大最小公倍數

題目 已知乙個正整數n,問從1 n中任選出三個數,他們的最小公倍數最大可以為多少。輸入格式 輸入乙個正整數n 輸出格式 輸出乙個整數,表示你求得的最小公倍數 樣例輸入 樣例輸出 504注釋 504 9 8 7 資料規模與約定 1 n 106 分析 題目要求涉及貪心演算法,對於個人而言,更像是乙個純數...