国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

藍橋杯ALGO-2 最大最小公倍數

2019-11-08 20:04:17
字體:
來源:轉載
供稿:網友
  算法訓練 最大最小公倍數  時間限制:1.0s   內存限制:256.0MB      問題描述

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

輸入格式

輸入一個正整數N。

輸出格式輸出一個整數,表示你找到的最小公倍數。樣例輸入9樣例輸出504數據規模與約定

1 <= N <= 106。

在一組數中找三個數,使他們的最小公倍數最大,我們知道,兩個數的最小公倍數在最大的情況就是當兩個數互質的時候,他們的最小公倍數就是這兩個數的乘積,而且還有那么一個定理,即兩個相鄰的自然數互質,即使我們不知道定理怎么證明,但大體能想出來,但這是三個數,也就是說存在  奇-偶-奇  和 偶-奇-偶 兩種情況。

一:奇-偶-奇 這種情況用于n是奇數的情況,即 最大的三個數就是 n,n-1,n-2,那么可以看到,因為n和n-2都是奇數,所以肯定不存在公因數2,假設三個數中有一個存在因數3,那么另外兩個肯定不存在因數3,因為他們的變化范圍都小于3,也就是說,這三個數不僅是最大的,還是互質的,也就是說最大的最小公倍數就是這三個數的乘積,即n*(n-1)*(n-2)相信大部分人都可以想到這一步

二:偶-奇-偶 對于這種情況兩個偶數肯定是存在公因數2,也就是意味著最小公倍數要除以2,這是絕對不能容忍的,所以我們稍微縮小一下數,即n,n-1,n-3,這樣就又變成奇-偶-奇的結構了,但還有一個問題,就是假如偶數n存在因數3,那么n-3也必定有因數3,這直接導致最小公倍數除以3,更加不能容忍,為了保持奇-偶-奇的結構不變,只能變那個偶數,而離他最近的偶數就是n-2了,這下就完美了,3個數依然是互質的,最小公倍數就是(n-1)*(n-2)*(n-3)

三:雖然題目中明確的說了,1 <= N <= 106,但我依然覺得這個范圍有點愚蠢,在1個數中任意選出3個數我也是醉了,如果你覺得這沒什么的話,那接下來就讓人吐血了,因為你永遠無法提交正確,即使在哈爾濱理工大學的OJ(http://acm.hrbust.edu.cn/index.php?m=PRoblemSet&a=showProblem&problem_id=1632)上AC了,在藍橋杯上依然只能得60分,沒錯,就是這么任性。

import java.util.Scanner;public class Main {	public static void main(String[] args) {		Scanner scan = new Scanner(System.in);		long n = scan.nextInt();		long ans = 0;		if(n<=2){			ans = n;		}else if(n%2!=0){			ans = n*(n-1)*(n-2);		}else{			if(n%3==0){				ans = (n-1)*(n-2)*(n-3);			}else{				ans = n*(n-1)*(n-3);			}		}					System.out.println(ans);	}}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 东兴市| 庄河市| 彩票| 霍林郭勒市| 惠州市| 莱州市| 尼木县| 阿鲁科尔沁旗| 水富县| 温泉县| 西林县| 靖宇县| 中阳县| 北川| 兴和县| 图片| 尚志市| 赤壁市| 沽源县| 丽水市| 兴城市| 弥勒县| 宁德市| 兰溪市| 墨脱县| 太保市| 建阳市| 漳浦县| 岳阳市| 定西市| 定襄县| 油尖旺区| 永新县| 偏关县| 日土县| 繁峙县| 荥经县| 客服| 霍林郭勒市| 汉阴县| 邵东县|