百练 分解因数(递归)
来源:互联网 发布:淘宝卖家怎么改名 编辑:程序博客网 时间:2024/06/05 20:33
E:分解因数
- 查看
- 提交
- 统计
- 提问
- 总时间限制:
- 1000ms
- 内存限制:
- 65536kB
- 描述
- 给出一个正整数a,要求分解成若干个正整数的乘积,即a = a1 * a2 * a3 * ... * an,并且1 < a1 <= a2 <= a3 <= ... <= an,问这样的分解的种数有多少。注意到a = a也是一种分解。
- 输入
- 第1行是测试数据的组数n,后面跟着n行输入。每组测试数据占1行,包括一个正整数a (1 < a < 32768)
- 输出
- n行,每行输出对应一个输入。输出应是一个正整数,指明满足要求的分解的种数
- 样例输入
2220
- 样例输出
14
#include<iostream> #include<cstring> using namespace std; int n; //nn代表当前要分解的数字为nn,m代表要分解的(疑似)最大因子 //返回值代表分解的种数 int dfs(int nn,int m) { if(nn==1)return 1; //若分解的数字为1 if(m==1)return 0; //若最大因子为1 //如果m确实是nn的因子,那么进行递归调用,并将分解种数相加 if(nn%m==0)return dfs(nn,m-1)+dfs(nn/m,m); //否则尝试将m-1作为最大因子 return dfs(nn,m-1); } int main() { int t;cin>>t; while(t--) { cin>>n; printf("%d\n",dfs(n,n)); } return 0; }
阅读全文
0 0
- 百练 分解因数(递归)
- 百练 2749: 分解因数
- 百练2749:分解因数
- 每日一练------因数分解
- 百炼-2749-分解因数-C语言-递归算法
- 百炼-2749-分解因数-C语言-递归算法
- 递归专练B 数值分解(伪递归)
- 分解因数
- 因数分解
- 分解因数
- 因数分解
- 因数分解
- 分解因数
- 11月02日(第4天_八皇后、递归(因数分解、阶乘))
- 回溯法 百炼2749:分解因数
- 【Lightoj】1116 - 分解因数(水)
- poj2992(Divisors)(阶乘因数分解)
- 批量分解素因数(一)
- 搭建selenium + python环境
- No mapping found for HTTP request with URI
- JSON与XML的区别比较
- [shell 脚本]eval命令和命令代换 ` `和 $()
- Android 防止webview 注入
- 百练 分解因数(递归)
- 配置阿里云并编译ffmpeg_android
- JavaScript提高效率之编程实践
- 人工神经元模型及常见激活函数
- 局部敏感哈希(Locality-Sensitive Hashing, LSH)方法介绍
- pipe管道
- PPTP VPN
- 画图神器:plot.ly
- USB信号