自然數積分解

2021-07-23 09:52:26 字數 663 閱讀 1250

【題目描述】

把自然數n分解為若干個自然數之積,輸出方案數。

【輸入描述】

自然數n(1 ≤ n ≤ 2000000000)。

【輸出描述】

方案數。

【樣例輸入】

20

【樣例輸出】 4

【資料範圍及提示】

20 可分為:

204*52*10

2*2*5

優化前:

源**:

#include

int n,ans(0

);void solve(int t,int num) //

做題還是少啊!

for (int a=t;a<=num;a++) //

因數呈上公升趨勢,避免了重複。

if (!(num%a)&&a!=1) //

1的情況直接排除掉,避免無限遞迴。

solve(a,num/a);

}int

main()

優化後:

源**:

#include

int n,ans=1

;void solve(int t,int

num)

}int

main()

自然數積分解

題目描述 現需要把自然數n分解為若干個自然數之積,輸出方案數。輸入描述 輸入乙個自然數n 1 n 2000000000 輸出描述 輸出乙個數,表示方案數。樣例輸入 20 樣例輸出 4 資料範圍及提示 樣例可分為 204 5 2 10 2 2 5 優化前 源 include int n,ans 0 v...

2548 自然數積分解

題目描述 description 把自然數 分解為若干個自然數之積,輸出方案數。輸入描述 input description 自然數n,1 n 2000000000 輸出描述 output description 方案數樣例輸入 sample input 20 樣例輸出 sample output ...

2548 自然數積分解

時間限制 1 s 空間限制 32000 kb 題目等級 gold 題解把自然數 分解為若干個自然數之積,輸出方案數。輸入描述 input description 自然數n,1 n 2000000000 輸出描述 output description 方案數樣例輸入 sample input 樣例輸出...