C++-阶乘约数

  1. 题目:
    定义阶乘 n!=1×2×3×⋅⋅⋅×n。
    请问 100!100 的阶乘)有多少个正约数。

  2. 代码实现:

点击查看代码
#include <iostream>
using namespace std;
int prime[100];
int main(){
    for(int i=2;i<=100;i++){  //分解质因数模版
        int n=i;
        for(int j=2;j<=n/j;j++){
            while(n%j==0){
                prime[j]++;
                n/=j;
            }
        }
        if(n>1) prime[n]++;
    }
    long long int ans=1;
    for(int i=2;i<100;i++){
        ans*=(prime[i]+1);
    }
    cout<<ans<<endl;
}
posted @ 2022-03-11 23:42  自然力  阅读(255)  评论(0)    收藏  举报