合数分解质因数

每个合数都可以写成几个质数相乘的形式,其中每个质数都是这个合数的因数,叫做这个合数的分解质因数。 分解质因数只针对合数。

如:42可以分解为2*3*7

Tips:2是最小的质数,也是唯一的一个既是偶数又是质数的数.也就是说,除了2以外,质数都是奇数。
输入、输出描述
输入:
待分解的整数n(n>=2)
输出:
按从小到大的顺序输出分解的质数
Example
输入:
42
输出:
2,3,7
代码:
import java.util.*;

public class Main {
    public long[] solution(long input) {
      ArrayList<Long> list = new ArrayList<>();
      for(long i=2; i<=input; i++){
        while(input!=i){
          if(input%i==0){
            input=input/i;
            list.add(i);
          }else
            break;
        }
      }
      list.add(input);
      long results[] = new long[list.size()];
      for (int i = 0; i < list.size(); i++) {
        results[i] = list.get(i);
      }
      return results;
    }
}
一个创业中的苦逼程序员
评论专区

隐藏