82ptsO(BlogA)TLE求助
  • 板块P1593 因子和
  • 楼主asd890123
  • 当前回复1
  • 已保存回复1
  • 发布时间2024/6/22 08:02
  • 上次更新2024/6/22 11:55:22
查看原帖
82ptsO(BlogA)TLE求助
1074084
asd890123楼主2024/6/22 08:02

用的就是题解里算因子和的公式,时间复杂的感觉也没问题,但就是#5,#8,#10TLE,而且T的都不多,除了#5到上限,#8只T了0.15s,#10只T了0.01s,到底是为什么,code:

#include <iostream>
#include <unordered_map>

#define mod 9901

int main(){
    
    std::cin.tie(0)->sync_with_stdio(0);
    
    int a,b,ans = 1;
    std::unordered_map<int,int> decompose;
    
    std::cin >> a >> b;
    for (int i = 2;i * i <= a;i++)
        while (a % i == 0)
            a /= i,decompose[i]++;
    if (a != 1) decompose[a]++;
    for (auto i : decompose){
        
        int pPow = 1;
        long tmp = 0;
        
        for (int j = 0;j <= i.second * b;j++) tmp += pPow,pPow = (long)pPow * i.first % mod;
        ans = ans * (tmp % mod) % mod;
        
    }
    std::cout << ans << '\n';
    
    return 0;
}
2024/6/22 08:02
加载中...