洛谷:P3197 [HNOI2008]越狱(普及/提高- ,快速幂,分治)

题目:

洛谷:P3197 [HNOI2008]越狱(普及/提高- ,快速幂,分治)_第1张图片

分析:脑力真的不行了吗?这么简答的数学题都不会做了。

所有可能-没有相邻的就是结果。

洛谷:P3197 [HNOI2008]越狱(普及/提高- ,快速幂,分治)_第2张图片

问题就转化为一个快速幂了。。。

#include
using namespace std;
long long f(long long a,long long b,int c)
{
     //a 的 b次方  取余c 
 if(b==0) return 1;
 long long ans=f(a,b/2,c);
 ans=ans*ans%100003;
 if(b%2==1) ans=ans*a%100003;
 return ans;
}
int main()
{
     
 long long m,n;
 cin>>m>>n;
 long long ans=(f(m,n,100003)-m*f(m-1,n-1,100003)%100003+100003)%100003;
 cout<<ans;
}

你可能感兴趣的:(分治,数学)