1. 程式人生 > >藍橋杯 演算法訓練 最大最小公倍數

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

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

問題描述

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

輸入格式
輸入一個正整數N。

輸出格式
輸出一個整數,表示你找到的最小公倍數。
樣例輸入
9
樣例輸出
504
資料規模與約定
1 <= N <= 106。

詳細解釋

程式碼

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

using namespace std;

void Max_times(long long n)
{
	long
long ans; if(n <= 2) ans = n; else{ if(n%2!=0){ ans = (n-2)*(n-1)*n; } else{ if(n%3==0){ ans = (n-3)*(n-2)*(n-1); } else{ ans = (n-3)*(n-1)*n; } } } cout << ans << endl; } int main() { long long n; while(cin >> n){ Max_times(n); } return
0; }