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

問題 F: 最大公約數和最小公倍數問題

時間限制: 2 Sec  內存限制: 128 MB
提交: 513  解決: 50
[提交][狀態][討論版]

題目描述

輸入2個正整數x0,y0(2<=x0<100000,2<=y0<=1000000),求出知足下列條件的P,Q的個數。

條件:

1. P,Q是正整數;

2. 要求P,Q以x0爲最大公約數,以y0爲最小公倍數。

試求:

知足條件的全部可能的兩個正整數的個數。

輸入

每一個測試文件包含不超過5組測試數據,每組兩個正整數x0和y0(2<=x0<100000,2<=y0<=1000000)。

輸出

對於每組輸入數據,輸出知足條件的全部可能的兩個正整數的個數。

下面是對樣例數據的說明:

輸入3 60

此時的P Q分別爲:

    3     60
    15   12
    12   15
    60   3

因此,知足條件的全部可能的兩個正整數的個數共4種。

樣例輸入

3 60

樣例輸出

  4

Step1:__gcd(x,y)函數是存在的。


 

 

Step2:在知道最大公約數和最小公倍數的狀況下知足這兩個條件的數他們的乘積等於最大公約數和最小公倍數的乘積,
舉個列子如樣例最大公約數x0=3,最小公倍數y0=60.知足這兩個條件的數有(3,60),(15,12),(12,15),(60,3)。
關於數論的一些定理:
兩個數的最小公倍數等於它們的乘積除以它們的最大公約數。
兩兩互素的數的最小公倍數等於它們的乘積。
Step3:

 

Step4:other methods labeling:c,雙重循環。
相關文章
相關標籤/搜索