整数因子分解 爱被打了一巴掌 2022-12-28 14:16 143阅读 0赞 ### 文章目录 ### * 题目描述 * * 样例输入 * 样例输出 * 解题代码 -------------------- # 题目描述 # 整数因子分解问题。 大于`1`的正整数`n`可以分解为:`n=x1*x2*…*xm`。例如,当`n=12` 时,共有`8`种不同的分解式: 12=12; 12=6*2; 12=4*3; 12=3*4; 12=3*2*2; 12=2*6; 12=2*3*2; 12=2*2*3。 对于给定的正整数`n`,计算`n`共有多少种不同的分解式。 ## 样例输入 ## 12 ## 样例输出 ## 8 # 解题代码 # #include <iostream> using namespace std; int fun(int a, int b) { if(a == 1) return 1; if(b == 1) return 0; if(a % b == 0) return fun(a / b, b) + fun(a, b - 1); else return fun(a, b - 1); } int main() { int a; cin >> a; Count(a); cout << fun(a, a) << endl; return 0; }
还没有评论,来说两句吧...