2020蓝桥杯决赛 阶乘约数

题目描述

点我提交

定义阶乘 n!=1×2×3×⋅⋅⋅×n。

请问 100!(100的阶乘)有多少个正约数。

#include<stdio.h>
int main()
{
	long long ans=1;
	int i,j,n,s,p[110]={0};
	for(i=2;i<=100;i++)
	{
		n=i;
		for(j=2;j*j<=i;j++)
			while(n%j==0)
			{
				p[j]++;
				n=n/j;
			}
		if(n!=1) p[n]++;
	}
	for(i=1;i<=100;i++)
		ans*=p[i]+1;
	printf("%lld",ans);
	return 0;
}
posted @ 2021-06-03 15:26  新城R  阅读(120)  评论(0)    收藏  举报