描述
高中時我們對最小公倍數就已經很熟悉了,相信你很快就可以把這個問題解決。這次的問題是:給你乙個正整數n,任取三個不大於n的正整數,取法不限,每個數可取多次,使得取到的這三個數的最小公倍數在所有取法中是最大的。
例如當n = 5 時,不大於5的數為1、2、3、4、5。則應該選3、4、5三個數,它們的最小公倍數是60,在所有取法中是最大的。因此我們得到結果60。
是不是很簡單?抓緊時間 ac 吧。
輸入輸入包含多組測試資料。每組資料為乙個正整數n(1≤n≤10^6)。
輸出對每組測試資料,輸出乙個整數,代表所有可能取法中,選出的三個數的最小公倍數的最大值。
樣例輸入
5樣例輸出7
60**210
藍橋杯
題意分析:在n個數中找任意三個數的最小公倍數,並且求得最大的最小公倍數(重點在於最大)。
思路分析:最大 最小公倍數,聯想到兩個數的求最大最小公倍數,即兩個數的乘積(注:連續的兩
個自然數是互斥的)。
同樣,我們可以拿最後三個數來做考慮。
1.當n為奇數時,n,n-1,n-2為奇偶奇,裡面只有乙個偶數,所以不會有2這個因子。這三個數相差不
到3,所以也不會有因子3,故符合題意。
2.當n為偶數時,n,n-1,n-2為偶奇偶,此時n,n-2肯定含有因子2,所以除於2不值得。所以考慮將
n-2 換成n-3,變成奇偶奇,此時也有乙個問題n和n-3,如果n%3==0,則除於3更不值得。仍根據奇偶奇
的原則,變動偶數n為n-2,此時換成n-1,n-2,n-3和1情況一樣。故此時符合題意。
#includetypedef long long ll;
int main()
printf("%lld\n",ans);
} return 0;
}
最大最小公倍數
時間限制 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 分析 題目要求涉及貪心演算法,對於個人而言,更像是乙個純數...