分解质因数

2019-03-02  本文已影响0人  hey白启明

问题描述

测试样例

输入 输出
12 2 2 3
16 2 2 2 2

方法一:枚举

方法二:Pollard Rho因数分解

  //n为待分解的合数
  for(i=2;i<=n;i++)
    while(n!=i) {
      if(n%i==0){
        cout<<i<<' ';
        n=n/i;
      }
      else
        break;
    }
    cout<<n;
//调用方法recursion(m,2)
void recursion(int m, int n){
     if (m >= n) {
         while (m%n) n++;
         m/=n;
         recursion(m, n);
         cout << n << endl;
     }
 }

参考文章

上一篇下一篇

猜你喜欢

热点阅读