본문 바로가기
알고리즘

알고리즘)(pow(A,B))mod C 를 logB 시간에 구하는 함수

by 박정률 2017. 11. 26.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <cstdio>
#include <algorithm>
 
typedef long long ll;
ll a,b,c;
 
ll mypow(ll a,ll b,ll c){
    ll ret = 1ll;
    while(b>0){
        if(b&1){
            ret = (ret* a) % c;
        }
        b /= 2;
        a  = (a*a) % c;
    }
    return ret;
}
 
int main(){
    freopen("input.txt","r",stdin);
    scanf("%lld %lld %lld",&a,&b,&c);
    printf("%lld",mypow(a,b,c));
}
cs


간단하다.

'알고리즘' 카테고리의 다른 글

유량 테크닉  (0) 2018.03.31
codeforces)447b  (0) 2017.12.21
acm-cicpc 수학정복  (2) 2017.09.15
[BOJ1168] 조세퍼스 문제2  (0) 2017.01.22
[BOJ5012} 불만정렬  (0) 2017.01.22