1 条题解

  • 1
    @ 2022-7-21 21:33:36
    #include <stdio.h>
    long long n;
    int main(void) {
        scanf("%lld", &n);
        long long ans = 1ll;
        for (long long i = 2ll; i * i <= n; ++i)
            if (n % i == 0) {
                long long k = 0ll;
                while (1) {
                    if (n % i != 0ll)
                        break;
                    n /= i;
                    ++k;
                }
                ans *= (k << 1ll) + 1ll;
            }
        if (n > 1)
            ans *= 3;
        printf("%lld\n", (ans + 1) >> 1ll);
        return 0;
    }
    
    • 1

    信息

    ID
    4180
    时间
    1000ms
    内存
    63MiB
    难度
    4
    标签
    递交数
    4
    已通过
    4
    上传者