演算法訓練 最大最小公倍數

2022-05-31 10:36:10 字數 722 閱讀 4306

演算法訓練 最大最小公倍數  

時間限制:1.0s   記憶體限制:256.0mb

問題描述

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

輸入格式

輸入乙個正整數n。

輸出格式

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

樣例輸入

9樣例輸出

504資料規模與約定

1 <= n <= 106。

思路:剛開始想的就是簡單的n*(n-1)*(n-2),理所應當的想成了n是奇數的情況。

如果n是偶數的情況的話,那麼n和n-2肯定是有公約數2的。如果拋去n-2縮小數值考慮n-3。那麼也需要判斷n是否能夠被3整除。如果不能整除那麼最大的數值就是n*(n-1)*(n-3),不再需要向下考慮。如果是能夠整除,再向下考慮的話,又會被2整除。那麼我們需要定住(n-1)*(n-2)。(n-3)是奇數,此時最大的數值就是(n-1)*(n-2)*(n-3)。

小於等於2的時候情況單獨處理,計算過程中n是long long型別的,不然會錯誤。

**:

#include#include#include#includeusing namespace std;

int main()

else if(n%2)

else

else

}printf("%lld",ans);

return 0;

}

最大最小公倍數 演算法訓練

時間限制 1.0s 記憶體限制 256.0mb 問題描述 已知乙個正整數n,問從1 n中任選出三個數,他們的最小公倍數最大可以為多少。輸入格式 輸入乙個正整數n。輸出格式 輸出乙個整數,表示你找到的最小公倍數。樣例輸入 9樣例輸出 504資料規模與約定 1 n 106。找最大的三個兩兩互質的數,大於...

演算法訓練 最大最小公倍數

問題描述 已知乙個正整數n,問從1 n中任選出三個數,他們的最小公倍數最大可以為多少。輸入格式 輸入乙個正整數n。輸出格式 輸出乙個整數,表示你找到的最小公倍數。樣例輸入 9 樣例輸出 504資料規模與約定 1 n 106。很水的一道題,想通如果是偶數的情況就搞定了,另外要注意下資料很大,需要lon...

演算法訓練 最大最小公倍數

問題描述 已知乙個正整數n,問從1 n中任選出三個數,他們的最小公倍數最大可以為多少。輸入格式 輸入乙個正整數n。輸出格式 輸出乙個整數,表示你找到的最小公倍數。樣例輸入 9樣例輸出 504資料規模與約定 1 n 106。問題描述 最直接的想法就是找三個最大的互質數,這裡有個關係就是若n是奇數,那麼...