约数个数,约数之和
约数个数
ans = (a1 + 1) * (a2 + 1) * (a3 + 1) …… *(an + 1);
求一个数(n)的约数个数
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
int a[N];
int main() {
ll n, sum = 1;cin>>n;
for (int i = 2; i <= n / i; i++) {
ll sum1 = 0;
while(n % i == 0) {
n /= i;
sum1++;
}
sum = sum * (sum1 + 1);
}
if (n > 1) sum *= 2;
cout << sum;
return 0;
}
#include<bits/stdc++.h>
using namespace std;
typedef pair<int,int> PII;
typedef long long ll;
#define x first
#define y second
const int N = 10000010;
const int mod = 1000000000 + 7;
int a[N];
int main() {
unordered_map<int,int> q;
int n; cin>>n;
while(n--) {
int m;cin>>m;
for (int i = 2; i <= m / i; i++) {
while(m % i == 0) {
m /= i;
q[i]++;
}
}
if(m > 1) q[m]++;
}
ll sum = 1;
for (auto it = q.begin(); it != q.end(); it++) {
if(it->second) sum = sum *(it->second + 1) % mod;
}
cout << sum;
return 0;
}
约数之和
871. 约数之和 - AcWing题库
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int mod = 1000000000 + 7;
unordered_map<int,int> q;
int main() {
int n; cin>>n;
while(n--) {
int m;cin>>m;
for (int i = 2; i <= m / i; i++) {
while(m % i == 0) {
m /= i;
q[i]++;
}
}
if(m > 1) q[m]++;
}
ll sum = 1;
for (auto it = q.begin(); it != q.end(); it++) {
int a = it->first, b = it->second;
ll sum1 = 1, t = 1;
while(b--) {
t = (t * a) % mod;
sum1 = (sum1 + t) % mod;
}
sum = (sum * sum1) % mod;
}
cout << sum % mod;
return 0;
}
2301_81022820: 我自己改了一点,可以运行了!!谢谢你!!!
2301_81022820: D:\学习\c语言\Microsoft Visual Studio\MyProjects\9_2classes\9_2cpp.cpp(52) : warning C4508: 'main' : function should return a value; 'void' return type assumed D:\学习\c语言\Microsoft Visual Studio\MyProjects\9_2classes\9_2cpp.cpp(94) : error C2065: 'scanf_s' : undeclared identifier D:\学习\c语言\Microsoft Visual Studio\MyProjects\9_2classes\9_2cpp.cpp(169) : warning C4553: '==' : operator has no effect; did you intend '='? 执行 cl.exe 时出错. 9_2classes.exe - 1 error(s), 0 warning(s) 兄弟,help me
MA2E: 开导我了些许
静下心敲木鱼 _玩泥巴: up主是女生吗,大二已经非常非常厉害了,现在读研了把
CSDN-Ada助手: 非常感谢您的分享,非常实用的一篇博客。我们期待您的下一篇博客,建议您可以分享一些关于C++中面向对象编程方面的技巧,比如多态、继承、封装等等。期待您的精彩分享! 2023年博客之星「城市赛道」年中评选已开启(https://activity.csdn.net/creatActivity?id=10470&utm_source=blog_comment_city ), 博主的原力值在所在城市已经名列前茅,持续创作就有机会成为所在城市的 TOP1 博主(https://bbs.csdn.net/forums/blogstar2023?typeId=3152981&utm_source=blog_comment_city),更有丰厚奖品等你来拿~。