蓝桥练习-算法训练 最大最小公倍数
生活随笔
收集整理的這篇文章主要介紹了
蓝桥练习-算法训练 最大最小公倍数
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
問題描述
已知一個正整數N,問從1~N中任選出三個數,他們的最小公倍數最大可以為多少。
輸入格式
輸入一個正整數N。
輸出格式
輸出一個整數,表示你找到的最小公倍數。
樣例輸入
9
樣例輸出
504
數據規模與約定
1 <= N <= 106。
WA代碼:
#include <iostream> using namespace std;typedef long long ll; ll n; ll mx = -1; //記錄最大的最小公倍數 bool vis[107] = {false}; ll a[3];ll gcd(ll a, ll b) {if(b == 0) return a;else return gcd(b, a%b); }ll gongyue(ll a, ll b) {return a / gcd(a,b) * b; }ll gy3(ll a, ll b, ll c) {ll x = gongyue(a, b);return gongyue(x,c); }//排列 void dfs(ll index) {if(index == 3){if(gy3(a[0], a[1], a[2]) > mx){mx = gy3(a[0], a[1], a[2]);}return;}for(int i = 1; i <= n; i++){//選擇這個i,填入if(vis[i] == false){a[index] = i;vis[i] = true;dfs(index+1);vis[i] = false;dfs(index+1);}//不選這個i} }int main() {scanf("%lld", &n);dfs(0);printf("%lld\n", mx);return 0; }原因:顯示運行錯誤,測試用例1我沒有跑出來,初步估計應該是爆棧了?
總結
以上是生活随笔為你收集整理的蓝桥练习-算法训练 最大最小公倍数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 蓝桥练习-算法训练 审美课
- 下一篇: 蓝桥练习-算法训练 区间k大数查询