整数因子分解问题
2014-05-26 22:00
323 查看
大于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共有多少种不同的分解式。
Input
有多组输入数据,每组数据的一行,为一个正整数n( 1 < = n < = 2000000000 )。
Output
输入计算出的分解式的数目。每组数据后输出一个回车。
Sample Input
12
Sample Output
8
例如:当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共有多少种不同的分解式。
Input
有多组输入数据,每组数据的一行,为一个正整数n( 1 < = n < = 2000000000 )。
Output
输入计算出的分解式的数目。每组数据后输出一个回车。
Sample Input
12
Sample Output
8
#include<iostream> using namespace std; int num=0; void solve(int n) { if(n==1) { num++; return; } for(int i=n; i>=2; i--) { if(!(n%i)) { solve(n/i); } } } int main() { int n; cin>>n; solve(n); cout<<num<<endl; return 0; }
相关文章推荐
- 0048算法笔记——【随机化算法】拉斯维加斯随机化算法求解整数因子分解中的因子分割问题
- 整数因子分解问题--递归--动态规划
- 整数因子分解问题
- 整数因子分解问题
- 整数因子的分解问题--java
- 1717: 整数因子分解问题
- 整数因子分解问题
- 整数因子分解问题
- 整数因子分解问题
- 整数因子分解问题
- 整数因子分解问题
- 整数因子分解问题
- 0048算法笔记——【随机化算法】拉斯维加斯随机化算法求解整数因子分解中的因子分割问题
- SDUT 1722-整数因子分解问题(因子分解)
- 整数因子分解问题 SDUT
- 南邮 OJ 1219 整数因子分解问题
- 整数因子分解问题
- 整数因子分解问题
- 整数因子分解问题
- 整数因子分解问题