算法笔记.约数个数

题目:(acwing)

给定 n 个正整数 ai,请你输出这些数的乘积的约数个数,答案对 109+7 取模。

输入格式

第一行包含整数n。

接下来 n 行,每行包含一个整数 ai。

输出格式

输出一个整数,表示所给正整数的乘积的约数个数,答案需对 109+7 取模。

数据范围

1≤n≤100

1≤ai≤2×109

输入样例:
复制代码
3
2
6
8
输出样例:
复制代码
12

代码实现:

cpp 复制代码
#include<iostream>
#include<unordered_map>
using namespace std;
const int mod = 1e9+7;
int n;
unordered_map<int,int> primes;

void check(int x)
{
    int t = x;
    for(int i = 2;i <= x/i ;i++)
    {
        while(t%i == 0)
        {
           primes[i]++;
           t/=i;
        }
    }
    if(t > 1) primes[t]++;
}

int main()
{
    cin >>n;
    while(n--){
        int x;
        cin>>x;
        check(x);
    }
    long long res = 1;
    for(auto it = primes.begin();it!=primes.end();it++)
    {
        res= res*(it->second+1)%mod;
    }
    cout <<res;
    return 0;
}
相关推荐
看山还是山,看水还是。17 分钟前
网星安全AWS攻防方案,重磅发布!
运维·笔记·安全·云计算·aws
梁下轻语的秋缘30 分钟前
C/C++滑动窗口算法深度解析与实战指南
c语言·c++·算法
iFulling33 分钟前
【数据结构】第八章:排序
数据结构·算法
一只鱼^_35 分钟前
力扣第448场周赛
数据结构·c++·算法·leetcode·数学建模·动态规划·迭代加深
良木林37 分钟前
数据结构小扫尾——栈
c语言·数据结构
Magnum Lehar1 小时前
GameEditor的Platform的核心实现
数据结构
寂空_1 小时前
【算法笔记】动态规划基础(二):背包dp
笔记·算法·动态规划
24白菜头1 小时前
CSS学习笔记
前端·javascript·css·笔记·学习
吃货界的硬件攻城狮2 小时前
【STM32 学习笔记】GPIO输入与输出
笔记·stm32·学习
搏博2 小时前
神经网络在专家系统中的应用:从符号逻辑到连接主义的融合创新
人工智能·深度学习·神经网络·算法·机器学习