[HNOI2008]越狱(快速幂+反向思维)

题意:传送门

题解:反着考虑一下即可,水题

附上代码:

​
#include
using namespace std;
typedef long long ll;
const int mod=100003;
ll m,n;
ll qpow(ll a,ll b)
{
    ll ans=1;a%=mod;
    for(ll i=b;i;i>>=1,a=a*a%mod)
        if(i&1)ans=ans*a%mod;
    return ans%mod;
}
int main()
{
    scanf("%lld%lld",&m,&n);
    printf("%lld\n",(qpow(m,n)-(m*qpow(m-1,n-1))%mod+mod)%mod);
    return 0;
}

​

 

你可能感兴趣的:(快速幂)