求取约数之和
Posted 最爱小崔同学
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了求取约数之和相关的知识,希望对你有一定的参考价值。
#include<iostream>
#include<algorithm>
#include<unordered_map>
using namespace std;
typedef long long LL;
const int mod=1e9+7;
int main()
{
int n;
cin>>n;
unordered_map<int ,int > primes;
while(n--)
{
int x;
scanf("%d",&x);
for(int i=2;i<=x/i;i++)
while(x%i==0)
{
primes[i]++;
x=x/i;
}
if(x>1) primes[x]++;
}
LL res=1;
for(auto x:primes)
{
int p=x.first,a=x.second;
LL t=1;
while(a--)
{
t=t*p+1;
}
res=res*t%mod;
}
}
以上是关于求取约数之和的主要内容,如果未能解决你的问题,请参考以下文章