题目描述
给定正整数 n,请问有多少个质数是 n 的约数。
输入格式
输入的第一行包含一个整数 n。
输出格式
输出一个整数,表示 n 的质数约数个数。
样例输入
复制
396
样例输出
复制
3
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
long n = sc.nextLong();
int num = 0;
for (long i = 2; i * i <= n; i++) {
if (n % i == 0) num++;
while (n % i == 0) {
n /= i;
}
}
if (n > 1) num++;
System.out.println(num);
}
}