藍橋測試題 最大最小公倍數

2021-10-09 17:09:27 字數 930 閱讀 1902

問題描述:

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

資料規模與約定:

1 <= n <= 106

本題對數學知識考察比例太重,純粹是拓寬知識和訓練思維,我個人在解決過程中是一		步步提問,通過問題逐步求解!

1.什麼是質數?對於大於1的2個數的公約數只有1

2.為什麼樣例,504 = 7*8*9 ,三個數互質此時m,n-1,n-2三者乘積結果最大

3.如果不是三個相鄰互質數的時候應該如何計算?應當還是較大的三個數的乘積 ,如何確定這三個數?

1.應當考慮奇偶數,n若為奇數,n-1是偶數,n,n-2都是奇數,2個奇數都不能被2整除且互質, 相鄰2個非0自然數必然互質,此時三者互質,且都很大,應當是結果資料

2. n若為偶數,n-2是偶數,n-1是奇數 ,此時,1,3項必然有最小公約數2,

為保持尋找最大的結果,此時保留n,n-1,減小第三位;尋找下一位相鄰的互質數字,n- 3,此時

若n將與n-3,同有3為公約數,此結果仍然較小,,若不存在3公約數則此時三者乘積是結果;

3.繼續尋找下一位n-4此時必有2為公約數,尋找下一位,n-5但此時有對任意的》=2得數(n-1*n-2*n-3)>(n*n-1*n-5)

4.而根據3.1證明前者符合結果

需要注意的是:int 此時已經無法儲存這麼大的資料,需要用long long int

#include

using namespace std;

intmain

(int argc,

char

*ar**)

else

return0;

}

ps :小白上路,歡迎指正!

藍橋杯 最大最小公倍數

最大的最小公倍數 time limit 1000 ms memory limit 32768 k total submit 265 71 users total accepted 63 51 users rating special judge no description 從小學我們就學過最小公倍...

藍橋杯 最大最小公倍數

題目大意 給你乙個n,然後從這1 n這n個數中取出任意三個數 可以重複 求三個數的最小公倍數,然後求任意三個數中能取到的最大值 題目思路 看樣例,猜題意,9的答案是9,8,7,然後成功猜出來奇數是直接n n 1 n 2 因為n和n 2都是奇數,公約數是1,n n 2 也是奇數,跟n 1的公約數也是1...

藍橋杯 最大最小公倍數

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