美文网首页
整式因子分解问题

整式因子分解问题

作者: 彳亍cium | 来源:发表于2019-04-14 17:07 被阅读0次

1. 问题描述

  一个大于1的正整数n可以分解为n=x_1 \cdot x_2 \cdots x_m。例如,当n=12时,共有8种不同的分解式:

12 = 12 \qquad \qquad 12 = 3 \times 2 \times 2 \\ 12 = 6 \times 2 \qquad \qquad 12 = 2 \times 6 \\ 12 = 4 \times 3 \qquad \qquad 12 = 2 \times 3 \times 2 \\ 12 = 3 \times 4 \qquad \qquad 12 = 2 \times 2 \times 3

  •  算法设计:对于给定的正整数n,算出共有多少种不同的分解式。
  •  数据输入:由文件input.txt给出输入数据。第一行有个正整数n(1 \le n \le 2000000000)。
  •   结果输入:将计算的不同的分解式的数目输出到文件output.txt中。

1.1. 问题分析

  上面描述的分解式不考虑乘法的交换律,所以可以把第一个分解因子看作一个可以被12整除数字的遍历,剩下的因子就是一个递归问题,求解剩下因子的分解式即可,然后把每种因子的分解结果数相加,递归的返回条件是,因子等于1。

int solveInterger(int input){
    if(input <= 0){
        std::cout<<"input is illegal"<<std::endl;
        return -1;
    }
    int result = 0;
    if(input == 1)
        return 1;
    else
        for(int i = input; i > 1 && input % i == 0 ; i--){
                result = result + solveInterger(input/i);  //每种可整除因子递归结果求和
        }
    return result;
}

1.2. 算法分析

  算法中的循环边界是(1,n],其中n是输入的数字,但是能够进入到循环中的次数T肯定小于n。进入循环之后通过递归调用一个更少规模的子问题,输入变成了\frac{n}{i}。但是这其中必然存在重复多算的过程,即递归的是不独立的子问题,如下面的情形取n =24
24 = 2 \times 2 \times 6 \qquad 24 = 4 \times 6

两种情形的子问题都是求解6的整式分解问题,但是会出现多次求解的冗余过程,当数字n比较小的时候出现的这种情形的可能会比较低,但是当n很大时,会造成很坏的情况。

1.3. 实验验证

result.png

相关文章

  • 整式因子分解问题

    1. 问题描述   一个大于1的正整数可以分解为。例如,当时,共有8种不同的分解式:  算法设计:对于给定的正整数...

  • 范式组件03

    深度因子分解机(DeepFM)模型 深度因子分解机(Deep Factorization Machine,Deep...

  • 2019-10-16

    昨天写了整数因子分解。

  • Latent Semantic Indexing

    线性代数回顾 矩阵分解(matrix decomposition):将方阵分解成多个矩阵因子,并且这几个矩阵因子都...

  • 数字因子分解

    给一个 n > 1的正数,找到n的因子分解。结果是一个具有以下形式的字符串: 举个例子 思路分析 n == 1, ...

  • 素数因子分解

    原创 给定某个正整数 N,求其素因子分解结果,即给出其因式分解表达式 N=p​1​​​k​1​​​​⋅p​2​​​...

  • 【抽象代数】因子分解与域的扩展

    因子分解与域的扩展 一、因子分解 我们知道,整数环中的每一个合数都可以唯一地分解成素数的乘积; 域 F 上每个次数...

  • FM算法

    FM算法(Factorization Machine) 因子分解机(Factorization Machine, ...

  • 质因子分解(素数埃氏筛法)[PAT A1059]

    埃氏筛法原理质因子分解结论

  • 推荐系统玩家 之 因子分解机FM(Factorization M

    推荐系统玩家 之 因子分解机FM(Factorization Machines)

网友评论

      本文标题:整式因子分解问题

      本文链接:https://www.haomeiwen.com/subject/igjswqtx.html