mirror of
https://git.sb/baoshuo/OI-codes.git
synced 2024-11-23 20:48:48 +00:00
871. 约数之和
https://www.acwing.com/problem/content/submission/code_detail/7761974/
This commit is contained in:
parent
18f78198af
commit
13451e4757
32
AcWing/871/871.cpp
Normal file
32
AcWing/871/871.cpp
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
#include <bits/stdc++.h>
|
||||||
|
|
||||||
|
using namespace std;
|
||||||
|
|
||||||
|
const int mod = 1000000007;
|
||||||
|
|
||||||
|
int n, x;
|
||||||
|
long long ans = 1;
|
||||||
|
|
||||||
|
int main() {
|
||||||
|
cin >> n;
|
||||||
|
map<int, int> primes;
|
||||||
|
while (n--) {
|
||||||
|
cin >> x;
|
||||||
|
for (int i = 2; i * i <= x; i++) {
|
||||||
|
while (x % i == 0) {
|
||||||
|
x /= i;
|
||||||
|
primes[i]++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
primes[x] += x > 1;
|
||||||
|
}
|
||||||
|
for (auto p : primes) {
|
||||||
|
long long t = 1;
|
||||||
|
while (p.second--) {
|
||||||
|
t = (t * p.first + 1) % mod;
|
||||||
|
}
|
||||||
|
ans = ans * t % mod;
|
||||||
|
}
|
||||||
|
cout << ans << endl;
|
||||||
|
return 0;
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user