藍橋杯 演算法訓練 最大最小公倍數 C 做法

2021-10-02 21:32:28 字數 624 閱讀 4400

資源限制

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

問題描述

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

輸入格式

輸入乙個正整數n。

輸出格式

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

樣例輸入

9樣例輸出

504資料規模與約定

1 <= n <= 106。

思路:剛開始對這個題目覺得三個最大的數字相乘應該差不多,後面發現乙個都沒過。覺得還是有方法的,具體如下:

一.若輸入的數字為偶數,n與n-2肯定可以被2約掉,不會達到最大值;而將n-2改為n-3,就到考慮n這個偶數能否被3整除,如果可以,那n-3也不行,就得變成n-5,又要考慮n能否被5整除,所以最好的辦法是將n變為奇數,因為兩個奇數和乙個偶數就不用擔心約分問題了,即當n為偶數時公式為(n-1)(n-2)(n-3)。

二.若為奇數,可參照上述所說,直接相乘,即為n(n-1)(n-2)。

**非常簡單,如下:

#include

intmain()

else

}else

return0;

}

藍橋杯 演算法訓練 最大最小公倍數

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

藍橋杯 演算法訓練 最大最小公倍數

問題描述 已知乙個正整數n,問從1 n中任選出三個數,他們的最小公倍數最大可以為多少。輸入格式 輸入乙個正整數n。輸出格式 輸出乙個整數,表示你找到的最小公倍數。樣例輸入 9樣例輸出 504資料規模與約定 1 n 106。參考 當n為奇數時,答案一定是n n 1 n 2 當n為偶數時,答案是n a ...

藍橋杯 演算法訓練 最大最小公倍數

問題描述 已知乙個正整數n,問從1 n中任選出三個數,他們的最小公倍數最大可以為多少。輸入格式 輸入乙個正整數n。輸出格式 輸出乙個整數,表示你找到的最小公倍數。樣例輸入 9樣例輸出 504資料規模與約定 1 n 106。思路 首先,從題目的資料規模可以看出題目存在乙個特殊的情形,就是當n小於3的時...