#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;
cin>>x;
for(int i=2;i<=x/i;i++){
while(x%i==0){
primes[i]++;
x/=i;
}
}
if(x>1){
primes[x]++;
}
}
LL res=1;
for(auto prime:primes){
res=res*(prime.second+1)%mod;
}
cout<<res<<endl;
return 0;
}
https://blog.youkuaiyun.com/piaocoder/article/details/47954385?fromshare=blogdetail&sharetype=blogdetail&sharerId=47954385&sharerefer=PC&sharesource=kmvmy&sharefrom=from_link 整体来说,约数的原理是根据每个大于1的正整数可以分解为它的质因数的指数幂的乘积,所以求出约数的个数的公式为每个质因数的幂加一的乘积。公式参考链接如上。