51nod 1046 A^B Mod C
程序员文章站
2022-05-09 13:01:20
...
分治,复杂度 logn
//
// main.cpp
// wzazzy
//
// Created by apple on 2018/10/23.
// Copyright © 2018年 apple. All rights reserved.
//
#include<stdio.h>
#include<iostream>
#include<algorithm>
#include<cmath>
#include<cstring>
#include<string.h>
#include<queue>
#include<stack>
#include<list>
#include<map>
#include<set>
#include<vector>
typedef long long int ll;
const int maxn =1000+10;
const int maxm=10000;
const int mod =1e9+7;
const int INF=0x3f3f3f3f;
int solve(int a,int n,int m)
{
if(n==0)return 1;
int x=solve(a,n/2,m);
ll ans=(ll)x*x% m;
if(n%2==1)ans=ans*a%m;
return (int)ans;
}
int main(int argc, const char * argv[])
{
int a,b,c;scanf("%d%d%d",&a,&b,&c);
std::cout<<solve(a,b,c)<<std::endl;
return 0;
}
上一篇: 洛谷P4549 裴蜀定理
下一篇: HDU - 1465(错排)