码迷,mamicode.com
首页 > 其他好文 > 详细

bzoj 1008

时间:2017-09-25 16:07:46      阅读:88      评论:0      收藏:0      [点我收藏+]

标签:快速幂   efi   printf   log   blog   work   color   class   include   

水得不能再水了吧。此题主要是一个补集思想。

可能发生越狱的状态=所有状态-不会发生越狱的状态=M^N-M*(M-1)^(N-1)。

(M^N-M*(M-1)^(N-1))%P=(M^N%P-M*(M-1)^(N-1)%P+P)%P。

用快速幂来求解。

#include<cstdio>
#define P 100003
typedef long long ll;
ll n,m;
ll work(ll x,ll y){
    ll now=x,ans=1;
    for(;y;y>>=1,now=now*now%P)
        if(y&1) ans=ans*now%P;
    return ans;
}
int main(){
    scanf("%lld%lld",&m,&n);
    printf("%lld",(work(m%P,n)-m*work((m-1)%P,n-1)%P+P)%P);
    return 0;
}

 

bzoj 1008

标签:快速幂   efi   printf   log   blog   work   color   class   include   

原文地址:http://www.cnblogs.com/AmnesiacVisitor/p/7592019.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!