试题 算法训练 素因子去重 JAVA

    技术2022-07-11  71

    试题 算法训练 素因子去重 JAVA

    问题描述   给定一个正整数n,求一个正整数p,满足p仅包含n的所有素因子,且每个素因子的次数不大于1 输入格式   一个整数,表示n 输出格式   输出一行,包含一个整数p。 样例输入 1000 样例输出 10 数据规模和约定   n<=10^12   样例解释:n=1000=2^353,p=2*5=10

    参考链接

    import java.util.Scanner; public class 素因子去重 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); long n = sc.nextLong(); long p=1,i; for(i=2;i<=n;i++) { if(n%i==0) p*=i; while(n%i==0)//去重 { n/=i; } } System.out.println(p); } }
    Processed: 0.008, SQL: 9