AcWing 870. 约数个数
原题链接
简单
作者:
别期待太多
,
2024-10-11 23:09:51
,
所有人可见
,
阅读 4
晚上复习
#include<iostream>
#include<cstdio>
#include<unordered_map>
using namespace std;
const int N = 1e9 + 7;
int t,n;
unordered_map<int,int> prime;
int main()
{
scanf("%d", &t);
while(t--)
{
scanf("%d", &n);
for(int i = 2; i <= n/i; i ++)
{
if(n % i == 0)
{
while(n % i == 0)
{
prime[i]++;
n /= i;
}
}
}
if(n > 1)
prime[n] ++;
}
long long res = 1;
for(auto ele : prime)
{
res = res * (ele.second+1) % N;
}
printf("%lld", res);
return 0;
}