【数论】【快速幂】bzoj1008 [HNOI2008]越狱

根据 高中的数学知识 即可推出 ans=m^n-m*(m-1)^(n-1) 。快速幂取模搞一下即可。

 1 #include<cstdio>
 2 using namespace std;
 3 typedef long long ll;
 4 #define MOD 100003
 5 ll n,m;
 6 ll Quick_Pow(ll x,ll p)
 7 {
 8     if(!p) return 1;
 9     ll ans=Quick_Pow(x,p>>1);
10     ans=ans*ans%MOD;
11     if(p&1) ans=ans*x%MOD;
12     return ans;
13 }
14 int main()
15 {
16     scanf("%lld%lld",&m,&n);
17     printf("%lld\n",(int)(Quick_Pow(m,n)+MOD-((m%MOD*Quick_Pow(m-1,n-1))%MOD))%MOD);
18     return 0;
19 }
posted @ 2014-11-30 08:49  AutSky_JadeK  阅读(71)  评论(0编辑  收藏
TVアニメ「Charlotte(シャーロット)」公式サイト TVアニメ「Charlotte(シャーロット)」公式サイト