日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

POJ NOI MATH-7828 最大公约数与最小公倍数

發(fā)布時間:2025/3/18 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 POJ NOI MATH-7828 最大公约数与最小公倍数 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
問題鏈接POJ NOI MATH-7828 最大公約數(shù)與最小公倍數(shù)。


總時間限制:
1000ms
內(nèi)存限制:
65536kB
描述

兩個正整數(shù)的最大公約數(shù)是G,最小公倍數(shù)是L,它們的和最小是多少?

輸入
兩個不大于10000的正整數(shù)G和L,中間用單個空格隔開。數(shù)據(jù)保證L是G的倍數(shù)。
輸出
一個正整數(shù),即最小的和。
樣例輸入
14 280
樣例輸出
126
來源
《奧數(shù)典型題舉一反三(小學五年級)》 (ISBN 978-7-5445-2882-5) 模擬試卷一 第6題



問題分析

? 不知道如何下手就枚舉,靠暴力解決問題。問題是如何枚舉?

? 假設兩個正整數(shù)是a和b,那么a>0且b>0。G是a和b的最大公約數(shù),假設a=kaG和b=kbG, a+b=(ka+kb)G,明顯ka>0且kb>0,得ka+kb>=2。

? 那么,枚舉就按照ka+kb>=2,枚舉ka+kb,從2開始。并且滿足a+b=(ka+kb)G

程序說明

? 程序中,變量i即ka+kb,變量aplusb即a+b,變量j即a,aplusb-j即b。




AC的C++語言程序:

#include <iostream>using namespace std;// 非遞歸計算最大公約數(shù) int gcd(int m, int n) {for(;;) {if(n == 0)return m;int temp = m % n;m = n;n = temp;} }int main() {int g, l, ans, aplusb;cin >> g >> l;for(int i=2; ;i++) {ans = 0;aplusb = i * g;for(int j=g; j<aplusb; j+=g)if(j / g * (aplusb - j) == l) {if(gcd(j, aplusb - j) == g) {ans = aplusb;break;}}if(ans > 0) {cout << ans << endl;break;}}return 0; }


轉(zhuǎn)載于:https://www.cnblogs.com/tigerisland/p/7563943.html

總結(jié)

以上是生活随笔為你收集整理的POJ NOI MATH-7828 最大公约数与最小公倍数的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。