C++
$\color{#cc33ff}{— > 算法基础课题解}$
约数个数:
约数之和:
$code:$
#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) {
x /= i;
primes[i] ++;
}
if (x > 1) primes[x] ++;
}
ll res = 1;
for (auto prime : primes) {
int p = prime.first, a = prime.second;
ll t = 1;
while (a --) t = (t * p + 1) % mod;
res = res * t % mod;
}
cout << res;
return 0;
}
怎么又来氵题了?
大佬,是您太强了😂
可能这个题对于您来说是氵题,但是对我这个小渣来说它不算水题,因为之前数论这里约数个数和约数之和我确实不知道还可以这样算,感觉好厉害(ง •_•)ง
你怎么又来做基础课了?
啥?我一直做的都是基础课啊
。。。
hh,大佬之前以为我是做的啥?
我以为早就做完了
嗷嗷,没有做完,现在正在做(ง •_•)ง