参考代码:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in=new Scanner(System.in);
long n=in.nextLong();
long p=1;
for(long i=2;i<=n;i++) {
// 如果i从最小的质因子2开始并且每次循环结束得到的新的n都已经不再包含上一个质因子i,
//那么下一次满足整除条件的i(能被n整除的i)一定还是质数.
if(n%i==0)
p*=i;
while(n%i==0)
n/=i;
}
System.out.println(p);
}
}
参考链接:https://blog.csdn.net/qq_42835910/article/details/86714857