【分治法】整数因子分解问题

简介: 【分治法】整数因子分解问题

 问题描述:

问题描述:

 大于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.txt 给出输入数据。第一行有1 个正整数n (1≤n≤2000000000)。

结果输出:

将计算出的不同的分解式数输出到文件output.txt 。

输入文件示例          输出文件示例

input.txt            output.txt

 12                      8

代码如下:

#include <iostream>
using namespace std;
int factor(int n){
    int sum=0;
    for(int i=n;i>1;i--){
        if(n%i==0){//i是n的因子 
            int j=n/i;
            if(factor(j)==0) sum++;
            else{
                sum=sum+factor(j);
            }
        }
    }
    return sum;
}
int main()
{
    int n;cin>>n;
    cout<<factor(n)<<endl;
    return 0;
}

image.gif


目录
相关文章
|
开发者 人工智能 消息中间件
|
存储 Java
Java设计一个简单的计算器程序
Java设计一个简单的计算器程序
|
12月前
|
机器学习/深度学习 监控 算法
深度学习在图像识别中的创新应用与未来趋势###
【10月更文挑战第14天】 本文探讨了深度学习技术在图像识别领域的创新突破,强调其在提升识别精度、效率及拓展应用场景上的关键作用。通过对比传统方法,凸显了深度学习模型的优越性,并展望其未来发展趋势,包括模型优化、跨模态学习及隐私保护等方向。 ###
298 0
|
机器学习/深度学习 人工智能 算法
【算法】最长公共子序列(C/C++)
【算法】最长公共子序列(C/C++)
|
网络架构
电脑拨号联网无法使用代理问题
电脑拨号联网无法使用代理问题
381 5
《黑神话:悟空》中的物理模拟与碰撞检测技术解析
【8月更文第26天】《黑神话:悟空》是一款备受期待的动作角色扮演游戏,以其精致的画面和丰富的物理效果而闻名。为了实现游戏中的真实感和互动性,开发团队使用了先进的物理引擎和碰撞检测系统。本文将深入探讨《黑神话:悟空》中的物理模拟与碰撞检测技术,并通过一些伪代码示例来展示其实现细节。
509 0
Element UI 多选表格--判断勾选数据行的 Checkbox 时为选中还是取消选中
Element UI 多选表格--判断勾选数据行的 Checkbox 时为选中还是取消选中
445 1
|
存储 负载均衡 网络协议
BGP 技术连载:BGP 选路规则
【4月更文挑战第23天】
1021 0
|
测试技术 数据安全/隐私保护
实训—用例图的建模与用例描述的写作
实训—用例图的建模与用例描述的写作
4176 0
实训—用例图的建模与用例描述的写作
|
存储 算法 程序员
【算法训练-搜索算法 一】【DFS网格搜索框架】岛屿数量、岛屿的最大面积、岛屿的周长
【算法训练-搜索算法 一】【DFS网格搜索框架】岛屿数量、岛屿的最大面积、岛屿的周长
251 0