题目
试题 算法提高 约数个数
资源限制
时间限制:1.0s 内存限制:512.0MB
输入一个正整数N
样例输入
12
样例输出
6
样例说明
12的约数包括:1,2,3,4,6,12。共6个
package 蓝桥练习;
import java.util.Scanner;
/**
* 样例说明
12的约数包括:1,2,3,4,6,12。共6个
*/
public class Main {
public static void main(String[] args) {
int sum = 0;
Scanner s = new Scanner(System.in);
int N = s.nextInt();
for(int i=1; i*i<=N; i++) { //循环只要到两个数相乘到达该值即可
if(N%i == 0) {
if(i*i == N) { //若是两个相等的数则只需加1 (像4*4=16)
sum +=1;
}else { //若是不相同约数的个数则需加2
sum +=2;
}
}
}
System.out.println(sum);
s.close();
}
}