分解因数(2)
2018-02-27 13:19
183 查看
#include<bits/stdc++.h>
using namespace std;
int k;
void ac(int s,int m)
{
if(s==1)
{
k++;return ;
}//拆分数为1时,方案数加1,结束递归
else for(int i=m;i<=s;i++)
if(s%i==0)
{//s除以正整数i后继续拆分
ac(s/i,i);//正整数从i开始继续枚举
}
}
int main()
{int n;
cin>>n;
for(int i=1;i<=n;i++)
{
k=0;
int t;
cin>>t;
ac(t,2);//把将要拆分的数t传递给s,因子为1时会无限递归,所以从2开始
cout<<k<<endl;//输出方案数
}
return 0;
}
using namespace std;
int k;
void ac(int s,int m)
{
if(s==1)
{
k++;return ;
}//拆分数为1时,方案数加1,结束递归
else for(int i=m;i<=s;i++)
if(s%i==0)
{//s除以正整数i后继续拆分
ac(s/i,i);//正整数从i开始继续枚举
}
}
int main()
{int n;
cin>>n;
for(int i=1;i<=n;i++)
{
k=0;
int t;
cin>>t;
ac(t,2);//把将要拆分的数t传递给s,因子为1时会无限递归,所以从2开始
cout<<k<<endl;//输出方案数
}
return 0;
}
相关文章推荐
- poj1811(miller_robin和pollard分解因数的随机性算法)
- 洛谷 1414 数论 分解因数 水题
- 将整数分解成若干个质因数.
- 专题:分解质因数
- 分解因数
- NKOJ3959 天真的因数分解(二分答案,容斥原理,莫比乌斯函数)
- 一道因数分解的相关数学题
- LightOJ - 1341 (因数分解)
- 蓝桥杯 BASIC-16 基础练习 分解质因数
- 蓝桥杯 算法设计_6 分解质因数
- Python 将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。
- 因数分解
- 根据要求求除数的数 与 互素和算法 (的品质因数和欧拉函数分解)
- poj2429 GCD & LCM Inverse 因数分解pollard_rho算法
- 【快速因数分解】Pollard's Rho 算法
- Vijos1889 天真的因数分解
- poj2992(Divisors)(阶乘因数分解)
- 洛谷 1414 数论 分解因数 水题
- /*题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。 */
- 分解因数