题目: 给定一个n 求它的全部质因子 * 数据范围 10^12 我们算法要控制在根号n 10^6 */ public class 求解质因子 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); long n = sc.nextLong(); for (int i = 2; i <= n / i ; i++) { // 说明它是n的质因数 if(n%i==0){ System.out.print(i+ " "); // 我们只求这个质因数 不求它的系数 除干净 while(n%i==0) n/=i; } } // 任何一个数 它的质因子要么大于根号n只有一个 要么没有(每个数最多只有一个大于根号n的质因子) if(n>1) System.out.print(n); } }
蓝桥杯 java 求解质因数
最新推荐文章于 2024-07-22 14:15:06 发布