【C++学习】【算法学习】算法设计与分析 2- 11整数因子分解问题
2019-03-10 20:10
621 查看
比较笨的方法:
先用枚举法找到其因子,再递归拆解因子(同样是枚举法),每找到一次因子或成功拆解因子则计数器增加一次。
(注:找到因子后一个数会分成两个因子相乘,要么只拆前者要么只拆后者,否则会有重复计数)
代码如下:
#include <iostream> using namespace std; int fun1(int x){ //算法函数 int count = 0; int i = x; while( --i >=2){ if(x % i != 0) continue; if(x % i ==0){ count += fun1(x/i); } } return (++count); } int main(){ //为满足题目格式要求 int sum,x; FILE *number,*answer; number = fopen("input.txt","r"); fscanf(number,"%d",&x); fclose(number); sum = fun1(x); answer = fopen("output.txt","w"); fprintf(answer,"%d",sum); fclose(answer); cout << "DONE" <<endl; }
本人还在初学阶段,如有错误,恳请指教。
相关文章推荐
- 【算法设计与分析】1、整数划分问题
- 【算法分析与设计】全排列问题
- 算法设计和数据结构学习_4(《数据结构和问题求解》part4笔记)
- 整数因子分解问题
- [C++]数据结构:算法分析之八皇后问题
- 【算法学习笔记】19.算法设计初步 最大子列和问题的三种方法
- Java之学习笔记(11)------------算法性能分析
- 整数因子分解问题
- 算法设计和数据结构学习_3(《数据结构和问题求解》part2笔记)
- 0048算法笔记——【随机化算法】拉斯维加斯随机化算法求解整数因子分解中的因子分割问题
- 关于整数的质因子分解和筛素数的分析
- 算法分析与设计实验三 回溯法 24点问题 n皇后问题
- 【C/C++】任意大于1的整数分解成素数因子乘积的形式
- 算法分析与设计-13-活动安排问题的贪心算法
- 算法设计与分析题目练习三:骑士旅游问题(回溯算法)
- 南邮 OJ 1219 整数因子分解问题
- Pollard_rho算法模板(大整数的因子分解)
- 算法设计与分析--01背包问题(动态规划法解决)
- Pollard_rho算法(大整数的因子分解或判断是否为素数)
- 用递归法:设计算法求解汉诺塔问题,并编程实现。 (1) Hanoi(汉诺)塔问题分析 这是一个古典的数学问题,是一个用递归方法解题的典型例子。问题是这样的:古代有一个梵塔,塔内有3个座 A,B,C