洛谷P1029 最大公約數和最小公倍數問題

2022-05-01 10:12:06 字數 888 閱讀 6292

輸入二個正整數x0,y0(2<=x0<100000,2<=y0<=1000000),求出滿足下列條件的p,q的個數

條件:1.p,q是正整數

2.要求p,q以x0為最大公約數,以y0為最小公倍數.

試求:滿足條件的所有可能的兩個正整數的個數.

輸入格式:

二個正整數x0,y0

輸出格式:

乙個數,表示求出滿足條件的p,q的個數

輸入樣例#1:

3 60

輸出樣例#1:

4

p,q有4種

3 60 15 12 12 15 60 3

分析:暴力可以過,但是也可以用數學方法,利用唯一分解定律,最大公約數的次數都是取min,最小公倍數的次數都是取max,如果次數不同,證明這一位的貢獻值是2,兩個數乙個取max,乙個取min,就好了,如果次數相等,就沒有貢獻。在處理前先判斷一下最大公約數能不能整除最小公倍數.

#include #include 

#include

#include

#include

using

namespace

std;

intx,y,cnt;

int qpow(int a,int

b)

return

ans;

}int

main()

}printf(

"%d\n

",qpow(2

,cnt));

}

return0;

}

洛谷 P1029 最大公約數和最小公倍數問題

給你兩個數a,b,讓你求有多少對數,他們的最大公約數是a,最小公倍數是b。首先,要知道 a b 等於滿足條件的兩個數的乘積,因此我們可以讓 i 從1開始 另乙個數是 a b i 進行遍歷,如果第二個數能夠被整除,並且這兩個數最大公約數是a,那麼就是滿足條件的兩個數。還有乙個思路是說我們可以從a開始遍...

P1029 最大公約數和最小公倍數問題

題目描述 輸入兩個正整數 x,y,求出滿足下列條件的 p,q 的個數 p,q 是正整數。要求 p,q 以x 為最大公約數,以y 為最小公倍數。試求 滿足條件的所有可能的 p,q 的個數。輸入格式 一行兩個正整數 x,y 輸出格式 一行乙個數,表示求出滿足條件的 p,q 的個數。輸入輸出樣例 輸入 1...

P1029 最大公約數和最小公倍數問題(思維題)

輸入22個正整數x 0,y 0 2 le x 0 100000,2 le y 0 1000000 x0 y0 2 x0 100000,2 y0 1000000 求出滿足下列條件的p,qp,q的個數 條件 p,qp,q是正整數 要求p,qp,q以x 0x0 為最大公約數,以y 0y0 為最小公倍數.試...