問題描述:
已知一個正整數N,問從1~N中任選出三個數,他們的最小公倍數最大可以是多少。
輸入格式:
輸入正整數N。
輸出格式:
輸出一個整數,表示你找到的最小公倍數。
範例輸入:
9
範例輸出:
#504
資料規模與約定:
1
線上學習影片教學推薦:java課程
想法:
#首先聲明幾個概念:
兩個非0相鄰自然數的最小公倍數是它們的乘積;相鄰兩個奇數的最小公倍數是它們的乘積;相鄰兩個偶數(0除外)的最小公倍數是它們乘積的一半。
現在上升到三個數的最小公倍數,要依照N的奇偶性分兩種情況:
一、當n為奇數:n、n-1、n-2的乘積
二、當n為偶數:n-1、n-2、n-3是一組極大解,若答案大於目前值,只能是大於這3個數的乘積,那就只能把其中一個數變成n,三個數也要兩兩互質。 n、n-2、n-3偶偶奇明顯不互質;n、n-1、n-3偶奇奇;n、n-1、n-2偶奇偶明顯不互質。
那麼答案只能是n-1、n-2、n-3或是n、n-1、n-3。但n、n-3雖然是一個奇數,一個偶數,但是它們不連續可能不互質例如5,6,3三個數。
n為奇數:n、n-1、n-2
n為偶數: n是3的倍數n-1、n-2、n-3
n不是3的倍數n、n-1、n-3
範例如下:
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner input=new Scanner(System.in); long N=input.nextLong(); long temp=0; if(N<=2){ System.out.println(N); } else if(N%2==0){ temp=(N-1)*(N-2)*(N-3); if(N%3!=0){ temp=Math.max(temp,N*(N-1)*(N-3)); } System.out.println(temp); } else { System.out.println(N*(N-1)*(N-2)); } } }
技巧:考慮N
推薦java相關文章教學:java開發入門
#以上是java中如何計算最小公倍數的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本文討論了各種Java垃圾收集算法(串行,並行,CMS,G1,ZGC),它們的性能影響和適合大量堆的應用。

本文討論了Java虛擬機(JVM),詳細介紹了其在不同平台運行Java程序中的作用。它說明了JVM的內部流程,密鑰組件,內存管理,垃圾收集和性能Optimizatio

Java的Nashorn Engine可以在Java應用程序中啟用JavaScript腳本。關鍵步驟包括設置Nashorn,管理腳本和優化性能。主要問題涉及安全性,內存管理和未來兼容性

Java的Try-with-Resources通過自動關閉文件流或數據庫連接等資源來簡化資源管理,從而提高代碼可讀性和可維護性。

Java枚舉代表固定的值集,通過自定義方法和構造函數提供類型安全性,可讀性和其他功能。它們增強了代碼組織,可用於開關語句中以進行有效的價值處理。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

SublimeText3 Linux新版
SublimeText3 Linux最新版

Dreamweaver Mac版
視覺化網頁開發工具

禪工作室 13.0.1
強大的PHP整合開發環境

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

VSCode Windows 64位元 下載
微軟推出的免費、功能強大的一款IDE編輯器