zoukankan      html  css  js  c++  java
  • 分解质因数(模板)

    给定n个正整数ai,将每个数分解质因数,并按照质因数从小到大的顺序输出每个质因数的底数和指数。

    输入格式

    第一行包含整数n。

    接下来n行,每行包含一个正整数aiai。

    输出格式

    对于每个正整数aiai,按照从小到大的顺序输出其分解质因数后,每个质因数的底数和指数,每个底数和指数占一行。

    每个正整数的质因数全部输出完毕后,输出一个空行。

    数据范围

    1n1001≤n≤100,
    1ai21091≤ai≤2∗109

    输入样例:

    2
    6
    8
    

    输出样例:

    2 1
    3 1
    
    2 3

       试除法求质因子

        时间复杂度O(sqrt(n))

        n中最多只包含一个大于sqrt(n)的质因子

     代码:

           static void divide(int n){
                for(int i=2;i<=n/i;i++){//n中最多只包含一个大于sqrt(n)的质因子,所以只枚举到sqrt(n)即可,大于的那个单独处理
                    if(n%i==0){
                        int s=0;
                        while(n%i==0){
                        n/=i;
                        s++;
                    }
                    System.out.println(i+" "+s);
                    }
                }
                if(n>1) System.out.println(n+" 1");    
                System.out.println();
           }

       

  • 相关阅读:
    Ios8代码关闭输入预测问题
    iOS10 拍照崩溃问题
    iOS 圆的放大动画效果
    12-指针
    11-数组、字符串
    09-函数
    iOS 动画
    iOS 传值 委托(delegate)和block 对比
    IOS Table中Cell的重用reuse机制分析
    IOS 网络请求
  • 原文地址:https://www.cnblogs.com/qdu-lkc/p/12259452.html
Copyright © 2011-2022 走看看