給你兩個數a,b,讓你求有多少對數,他們的最大公約數是a,最小公倍數是b。
首先,要知道\(a*b\)等於滿足條件的兩個數的乘積,因此我們可以讓 $ i $ 從1開始(另乙個數是\(a*b/i\))進行遍歷,如果第二個數能夠被整除,並且這兩個數最大公約數是a,那麼就是滿足條件的兩個數。
還有乙個思路是說我們可以從a開始遍歷,每次加a,另乙個數也和上面求法一樣。因為最小的數一定是從a開始的。
這樣**就很容易寫出來了。
#include#include#include#includeusing namespace std;
int main()
} printf("%d\n", ans);
return 0;
}
洛谷P1029 最大公約數和最小公倍數問題
輸入二個正整數x0,y0 2 x0 100000,2 y0 1000000 求出滿足下列條件的p,q的個數 條件 1.p,q是正整數 2.要求p,q以x0為最大公約數,以y0為最小公倍數.試求 滿足條件的所有可能的兩個正整數的個數.輸入格式 二個正整數x0,y0 輸出格式 乙個數,表示求出滿足條件的...
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 為最小公倍數.試...