CodeForces 615 D. Multipliers(数论)
来源:互联网 发布:无法启动承载网络 编辑:程序博客网 时间:2024/05/21 17:29
Description
给出m个素数,这m个素数相乘得到一个数n,求n所有因子的乘积
Input
第一行为一整数m素数数量,之后m个素数pi(1<=m<=200000,2<=pi<=200000)
Output
输出n所有因子的乘积,结果模1e9+7
Sample Input
3
2 3 2
Sample Output
1728
Solution
首先记录每种素因子i的数量num[i],设有res个不同的素因子,令
那么由费马小定理有
Code
#include<cstdio>#include<iostream>#include<cstring>using namespace std;#define maxn 22222#define mod 1000000007lltypedef long long ll;int n,num[10*maxn],p[maxn],res;ll l[maxn],r[maxn];ll mod_pow(ll a,ll b,ll p){ ll ans=1ll; a%=p; while(b) { if(b&1)ans=(ans*a)%p; a=(a*a)%p; b>>=1; } return ans;}int main(){ while(~scanf("%d",&n)) { res=0; memset(num,0,sizeof(num)); while(n--) { int temp; scanf("%d",&temp); if(!num[temp])p[++res]=temp; num[temp]++; } l[0]=r[res+1]=1ll; for(int i=1;i<=res;i++)l[i]=l[i-1]*(num[p[i]]+1)%(mod-1); for(int i=res;i>=1;i--)r[i]=r[i+1]*(num[p[i]]+1)%(mod-1); ll ans=1ll; for(int i=1;i<=res;i++) { ll a=1ll*num[p[i]]*(num[p[i]]+1)/2%(mod-1)*l[i-1]%(mod-1)*r[i+1]%(mod-1); ans=ans*mod_pow(p[i],a,mod)%mod; } printf("%I64d\n",ans); } return 0;}
1 0
- CodeForces 615 D. Multipliers(数论)
- Codeforces 615 D Multipliers
- codeforces 615D - Multipliers
- Codeforces Round #338 (Div. 2)D-Multipliers(数论)
- 【14.67%】【codeforces 615D】Multipliers
- Codeforces Round #338 div 2 D. Multipliers 数论
- Codeforces 615D Multipliers 【组合数学】
- Codeforces 615D Multipliers(数学推公式)
- Codeforces 615D Multipliers (Round #338 (Div. 2) D题)
- CodeForces - 615D Multipliers 费马小定理+组合数学
- cf#338-D. Multipliers-数论-费马小定理
- Codeforces Round #338 (Div. 2) D. Multipliers
- Codeforces Round #338 (Div.2) D.Multipliers
- Codeforces Round #338 (Div. 2)-D. Multipliers
- Codeforces Round #338 (Div. 2) D. Multipliers(数学、降幂公式+逆元)
- Codeforces Round #338 (Div. 2) D. Multipliers (求因子积)
- Codeforces Round #338 (Div. 2)-D Multipliers(所有因数之积)
- CodeForces 632D Longest Subsequence(数论)
- jquery向后台请求的几种方式
- muShtaPmumixaMeerTyraniB.124
- 文件上传时jquery.form.js中提示form.submit 拒绝访问
- 低功耗蓝牙ibeacon的初级应用
- 如何避免野指针
- CodeForces 615 D. Multipliers(数论)
- 图像的膨胀与腐蚀、细化
- tomcat相关
- 并发Concurrent与并行Parallel的区别
- 好书app中用到的常用第三方库的总结
- 包图
- TCP连接的状态详解以及故障排查
- Java异常分类
- C#Winform程序如何使用ClickOnce发布并自动升级(图解)