题意

求n!的因子数%1e9+7。

思路

由唯一分解定理,一个数可以拆成素数幂之积,即2^a * 3^b *……,n!=2*3*……*n,所以计算每个素因子在这些数中出现的总次数(直接对2~n素因子分解即可),再用唯一分解定理公式,因子数=(a+1)*(b+1)*……。

代码

#include<bits/stdc++.h>
using namespace std;
#define inf 0x3f3f3f3f
#define ll long long
const int N=200005;
const int mod=1e9+7;
const double eps=1e-8;
const double PI = acos(-1.0);
#define lowbit(x) (x&(-x))
int a[N];
int main()
{
std::ios::sync_with_stdio(false);
ll n;
cin>>n;
for(int i=2;i<=n;i++)
{
int ii=i;
for(int j=2;j<=i;j++)
{
while(ii%j==0)
{
a[j]++;
ii/=j;
}
}
}
ll ans=1;
for(int i=2;i<=n;i++)
{
// cout<<a[i]<<endl;
ans=(ans*(a[i]+1))%mod;
}
cout<<ans<<endl;
return 0;
}

  

最新文章

  1. java的jxl技术导入Excel
  2. 采访ServiceStack的项目领导Demis Bellot——第1部分(网摘)
  3. php图片防盗链的小测试
  4. DNX/ASP.NET 5的xUnit入门向导
  5. ZooKeeper学习第八期——ZooKeeper伸缩性
  6. C++实现对树的创建和前中后序遍历
  7. $modal
  8. UVA 10943 How do you add? DP
  9. asp.net 中使用less
  10. zoj 3708 Density of Power Network
  11. Java - String 的字面量、常量池、构造函数和intern()函数
  12. windows 上查看一个命令的退出码
  13. 【.net】在ASP.NET中,IE与Firefox下载文件名中带中文汉字的文件,文件名乱码的问题
  14. 如何在windows上调试安卓机谷歌浏览器上的页面
  15. 添加 vip
  16. 如何在IntelliJ IDEA中使用Git .ignore插件忽略不必要提交的文件
  17. CentOS7的一些指令
  18. Python的Django框架中if标签的相关使用
  19. git之创建版本库
  20. Java基于jdbc链接mysql数据库步骤示列

热门文章

  1. 如何使用压缩的方式将Windows下的zip压缩包上传到Linux系统
  2. 微信小程序出现 text 设置行高 line-height 无效的问题
  3. 微信小程序之上传图片和图片预览
  4. jt格式文件与3D数据压缩
  5. 2019中国大学生程序设计竞赛(CCPC) - 网络选拔赛
  6. WPF 精修篇 用户控件
  7. C#开发BIMFACE系列28 服务端API之获取模型数据13:获取三维视点或二维视图列表
  8. Java连载49-常量格式、package包介绍
  9. 怎么在ubuntu下安装使用pycharm
  10. DFS(四):剪枝策略