codeforces396A
2024-04-12 12:14:15
sol:很显然就是找出所有质因数,然后分别塞进去就行了,怎么塞就是组合数。感觉就是道小学奥数题
#include <bits/stdc++.h> using namespace std; typedef int ll; inline ll read() {ll s=0; bool f=0; char ch=' ';while(!isdigit(ch)) {f|=(ch=='-'); ch=getchar();}while(isdigit(ch)) {s=(s<<3)+(s<<1)+(ch^48); ch=getchar();}return (f)?(-s):(s); } #define R(x) x=read() inline void write(ll x) {if(x<0) {putchar('-'); x=-x;}if(x<10) {putchar(x+'0'); return;}write(x/10); putchar((x%10)+'0'); } #define W(x) write(x),putchar(' ') #define Wl(x) write(x),putchar('\n') const int Mod=1000000007; int n; map<int,int>Map; int num[1000005],cnt[1000005]; int fac[15505],invf[15505]; inline int ksm(int x,int y) {int ans=1;while(y){if(y&1) ans=1LL*ans*x%Mod;x=1LL*x*x%Mod;y>>=1;}return ans; } inline int C(int n,int m) {int oo;oo=1LL*fac[n]*invf[m]%Mod*invf[n-m]%Mod;return oo; } int main() {freopen("codeforces396A_data.in","r",stdin);int i,j,k,x;R(n);fac[0]=invf[0]=1;for(i=1;i<=15500;i++) fac[i]=1LL*fac[i-1]*i%Mod;invf[15500]=ksm(fac[15500],Mod-2);for(i=15499;i>=1;i--) invf[i]=1LL*invf[i+1]*(i+1)%Mod;for(i=1;i<=n;i++){R(x);for(j=2;j<=sqrt(x);j++) if(x%j==0){int oo=0;while(x%j==0) {x/=j; oo++;}if(!Map[j]){Map[j]=++(*num); num[*num]=j; cnt[*num]=oo;}else cnt[Map[j]]+=oo;}if(x>1){if(!Map[x]){Map[x]=++(*num); num[*num]=x; cnt[*num]=1;}else cnt[Map[x]]++;}}int ans=1;for(i=1;i<=*num;i++){ans=1LL*ans*C(cnt[i]+n-1,n-1)%Mod;}Wl(ans);return 0; }
View Code
转载于:https://www.cnblogs.com/gaojunonly1/p/11318108.html
codeforces396A相关推荐
最新文章
- 基于视觉惯性里程计的无监督深度补全方法
- 2019需要关注的几大AI趋势
- 为什么 Redis 默认 16 个库?90% 以上程序员不知道!
- LeetCode 编程 二
- 【Python】20个小技巧,让数据可视化图表更专业!
- mysql数据库压缩备份_MySQL数据库之mysql数据库备份命令分享(mysql压缩数据库备份)...
- unity 解决引入dlopen api的问题
- 51nod 1343 行列式的根
- sql 日期和当前日期时间差_详解PostgreSQL 如何获取当前日期时间
- Socket网络编程【获取本机IP】
- unity快捷放置物体操作
- 加入在线服务--在线多人共享屏幕
- LTE 调制与解调——QPSK,16QAM,64QAM误码率比较
- 简约实用个人简历自我介绍PPT模板
- 中国传统文化课程笔记
- Linux虚拟机克隆后网络冲突解决办法
- 使用KEPWARE软件采用FOCAS协议读取数控机床数据(含地址表)
- 基于HTML旅游酒店主题网页项目的设计与实现——度假酒店预订网站(5页面)HTML+CSS+JavaScript...
- C语言怎样判断乘法越界,如何判断C语言算术运算的越界问题
- java 哲学家_Java哲学家进餐问题|多线程
热门文章
- Grunt插件之LiveReload 实现页面自动刷新,所见即所得编辑
- JVM经常使用的调优參数
- CSS 行内格式化上下文中的各种高度计算
- iOS视图控制对象生命周期-init、viewDidLoad、viewWillAppear、viewDidAppear、viewWillDisappear、view...
- 错误:无法作为数据库主体执行,因为主体 dbo 不存在、无法模拟这种类型的主体,或您没有所需的权限...
- 操作系统中的进程与线程
- mirc635.rar
- Nginx处理请求的11个阶段
- SourceTree 3.0.17如何跳过注册进行安装? — git图形化工具(一)
- 关于JS 事件冒泡和onclick,click,on()事件触发顺序