当前位置: 首页 > news >正文

经典算法 约数之和

原题目链接

问题描述

假设现在有两个自然数 AB,设 SA^B所有约数之和

请你计算:S mod 9901 的值。


输入格式

在一行中输入两个用空格隔开的整数 AB


输出格式

输出一个整数,表示 S mod 9901 的值。


数据范围

  • 0 ≤ A, B ≤ 5 × 10^7
  • AB 不会同时为 0

输入样例

2 3

输出样例

15

c++代码

#include<bits/stdc++.h>

using namespace std;

typedef long long ll;

ll A, B;

//求a^b对p取模
ll mypow(ll a, ll b, ll p) {
    if (b == 0) return 1 % p;
    if (b == 1) return a % p;
    __int128_t k = mypow(a, b / 2, p);
    if (b % 2 == 0) return (k * k) % p;
    else return (k * k * a) % p;
}

//求p^0 + p^1 + p^2 + p^3 + ... + p^k
ll sum_of_a_geometric_series(ll p, ll k) {
    if (k == 0) return 1;
    if (k == 1) return 1 + p;
    if (k % 2 == 0) {
        ll a = mypow(p, k, 9901);
        ll b = a + sum_of_a_geometric_series(p, k - 1);
        return b % 9901;
    }
    else {
        ll a = mypow(p, k / 2 + 1, 9901) + 1;
        ll b = a * sum_of_a_geometric_series(p, k / 2);
        return b % 9901;
    }
}

ll prime_factorization() {
    if (A == 0) return 0;
    if (A == 1 || B == 0) return 1;
    ll ans = 1;
    for (int i = 2; i <= A; i++) {
        ll cont = 0;
        while(A % i == 0) A /= i, cont++;
        if (cont == 0) continue;
        cont *= B;
        ans *= sum_of_a_geometric_series(i, cont);
        ans %= 9901;
    }
    return ans;
}

int main() {
    cin >> A >> B;
    cout << prime_factorization();
    return 0;
}//by wqs
http://www.dtcms.com/a/113361.html

相关文章:

  • 发布的React 19.1提供了什么新能力?
  • getpagesize
  • PyTorch 中的一个函数 —— torch.argmax
  • # 深入了解fasttext
  • 2025/4/2 心得
  • 嗅觉莫名减退、长期失眠,帕金森已潜伏?
  • 【玩泰山派】0、mac utm安装windows10
  • JVM 内存区域详解
  • 01人工智能基础入门
  • JavaWeb 课堂笔记 —— 01 HTML
  • AutoCAD2026中文版下载安装教程
  • GESP:2025-3月等级8-T1-上学
  • Java异步编程中的CompletableFuture介绍、常见错误及最佳实践
  • 多周期多场景的供应链优化问题 python 代码
  • QMainWindow添加状态栏
  • 【深度学习】嘿马深度学习目标检测教程第2篇:目标检测算法原理,3.2 R-CNN【附代码文档】
  • 【C/C++算法】蓝桥杯之递归算法(如何编写想出递归写法)
  • 2025 年 4 月补丁星期二预测:微软将推出更多 AI 安全功能
  • Java实现N皇后问题的双路径探索:递归回溯与迭代回溯算法详解
  • 【微机及接口技术】- 第四章 内部存储器及其接口(中)
  • LlamaIndex实现RAG增强:上下文增强检索/重排序
  • 我是如何写作的?
  • LintCode第974题-求矩阵各节点的最短路径(以0为标准)
  • 如何将本地更改的README文件同步到自己的GitHub项目仓库
  • OmniParser: 让大模型化身“电脑管家”
  • 洛谷 P3214 [HNOI2011] 卡农
  • 2.IO流的体系和字节输出流FileOutputStream的基本用法
  • macos 魔搭 模型下载 Wan-AI ComfyUI
  • L2-024 部落 #GPLT,并查集 C++
  • 智能驾驶中预测模块简介