传送门

显然需要先求出ab" role="presentation" style="position: relative;">abab的所有质因数和它们的指数。

但求出来之后并不能直接上等比数列求和公式。

因为这道题并不能直接求逆元。

原因?

a的某个因数有可能已经大于9901了。

于是它可能是9901的倍数。

这样就gg了。

于是我们可以二分求解等比数列的和。

代码:

#include<iostream>
#include<cmath>
#define mod 9901
#define ll long long
#define xx first
#define yy second
using namespace std;
int a,b,tot=0;
ll ans=1;
inline ll ksm(ll x,ll p){
    ll ret=1;
    while(p){
        if(p&1)ret=ret*x%mod;
        x=x*x%mod,p>>=1;
    }
    return ret;
}
inline ll calc(ll x,ll y){
    if(!y)return 1;
    if(y&1)return ((1+ksm(x,y/2+1))*calc(x,y/2))%mod;
    return ((1+ksm(x,y/2+1))*calc(x,y/2-1)+ksm(x,y/2))%mod;
}
int main(){
    cin>>a>>b;
    for(int i=2;i*i<=a;++i){
        int cnt=0;
        while(a%i==0)a/=i,++cnt;
        (ans*=calc(i,cnt*b))%=mod;
    }
    if(a-1)(ans*=calc(a,b))%=mod;
    cout<<ans;
    return 0;
}

2018.09.11 poj1845Sumdiv(质因数分解+二分求数列和)的更多相关文章

  1. POJ 1845 Sumdiv#质因数分解+二分

    题目链接:http://poj.org/problem?id=1845 关于质因数分解,模板见:http://www.cnblogs.com/atmacmer/p/5285810.html 二分法思想 ...

  2. 2018.09.11 poj2976Dropping tests(01分数规划)

    传送门 01分数规划板子题啊. 就是简单变形移项就行了. 显然 ∑i=1na[i]∑i=1nb[i]≤k" role="presentation" style=" ...

  3. 2018.09.11 bzoj3629: [JLOI2014]聪明的燕姿(搜索)

    传送门 一道神奇的搜索. 直接枚举每个质因数的次数,然后搜索就行了. 显然质因数k次数不超过logkn" role="presentation" style=" ...

  4. spoj TBATTLE 质因数分解+二分

    题目链接:点击传送 TBATTLE - Thor vs Frost Giants #number-theory #sliding-window-1 Thor is caught up in a fie ...

  5. 2018.09.15 poj1734Sightseeing trip(floyd求最小环)

    跟hdu1599差不多.. 只是需要输出方案. 这个可以递归求解. 代码: #include<iostream> #include<cstdio> #include<cs ...

  6. 2018.09.11 loj#10216.五指山(exgcd)

    传送门 就是一个exgcd的板子. 但注意算距离差的时候是在一个环上面算. 还有,答案要开long long233... 注意这两点之后就是exgcd板子了. 代码: #include<bits ...

  7. 2018.09.11 bzoj47214721: [Noip2016]蚯蚓(单调队列)

    传送门 好题. 目测只会多带一个log2(n+m)" role="presentation" style="position: relative;"& ...

  8. 2018.09.11 bzoj2208: [Jsoi2010]连通数(bitset+floyd)

    传送门 听说正解是缩点+dfs? 直接bitset优化floyd传递闭包就行了.(尽管时间复杂度是假的O(n3/32)" role="presentation" styl ...

  9. HDU3988-Harry Potter and the Hide Story(数论-质因数分解)

    Harry Potter and the Hide Story Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 65536/65536 ...

随机推荐

  1. leetcode754

    class Solution { public: int reachNumber(int target) { // 理解这题的意思 这题就好做了 // 分析 首先考虑一种比较极端的情况 即一直向正方向 ...

  2. J2SE 8的注解

    1. 注解概念 (1) 注解格式 modifiers @interface AnnotationName { type elementName(); type elementName() defaul ...

  3. ABAP-Generate subroutine

    1.定义 data:zprog like abapsource occurs with header line, prog() type c, msg() type c. 2.动态语句 zprog-l ...

  4. ABAP-TXT文件上传

    at selection-screen on value-request for pc_file.   call function 'WS_FILENAME_GET'     exporting    ...

  5. ubuntu 安装u盘恢复

    XP下进入CMD命令窗体,Vista及7/8下右键以管理员方式运行DOS窗体(win8.1:开始屏幕-windows系统-命令提示符) 输入DISKPART,会显示计算机名,及DISKPART> ...

  6. centos7 防火墙配置

    firewall-cmd --zone=public --add-port=80/tcp --permanentfirewall-cmd --zone=public --add-port=8080/t ...

  7. 全面解析PHP面向对象的三大特征

    PHP面向对象的三大特征: 继承,封装,多态 一.继承 1.如何实现继承? 给子类使用extends关键字,让子类继承父类: class Student extends Person{} 2.实现继承 ...

  8. 数据预处理之独热编码(One-Hot Encoding)(转载)

    问题由来 在很多机器学习任务中,特征并不总是连续值,而有可能是分类值. 例如,考虑一下的三个特征: ["male", "female"] ["from ...

  9. "\\s+"的使用

    详解 "\\s+" 正则表达式中\s匹配任何空白字符,包括空格.制表符.换页符等等, 等价于[ \f\n\r\t\v] \f -> 匹配一个换页 \n -> 匹配一个换 ...

  10. 1、JDK自带注解

    1.何为注解? 概念:注解(Annotation),也叫元数据.一种代码级别的说明.它是JDK1.5及以后版本引入的一个特性,与类.接口.枚举是在同一个层次.它可以声明在包.类.字段.方法.局部变量. ...