算法提高 约数个数

题目

问题描述

输入一个正整数N ,输出该数的约数个数

样例输入

12

样例输出

6

样例说明

  12的约数包括:1,2,3,4,6,12。共6个


思路:

有一个很神奇的公式叫约数个数定理,不过看起来好纠结的样子,算了,还是暴力吧~


代码

import java.util.*;

public class Main {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n;
        n=sc.nextInt();
        if(n==1) {System.out.println("1");return;}
        int cnt=0;
        for(int i=1;i<=n/2+1;i++)
            if(n%i==0) cnt++;
        cnt++;
        System.out.println(cnt);
    }

}
posted @ 2015-04-04 18:36  wygdove  阅读(252)  评论(0编辑  收藏  举报