#Z0607001. 快速幂(一)

快速幂(一)

题目描述

给你三个整数 a,b,pa,b,p,求 abmodpa^b \bmod p

输入格式

输入只有一行三个整数,分别代表 a,b,pa,b,p

输出格式

输出一行一个字符串 a^b mod p=s,其中 a,b,pa,b,p 分别为题目给定的值, ss 为运算结果。

2 10 9
2^10 mod 9=7

提示

样例解释

210=10242^{10} = 10241024mod9=71024 \bmod 9 = 7

数据规模与约定

对于 100%100\% 的数据,保证 0a,b<2310\le a,b < 2^{31}a+b>0a+b>02p<2312 \leq p \lt 2^{31}

1=>2=>4=>8=>16=>32=>64=>128

分别代表:

20212223242526272^0 2^1 2^2 2^3 2^4 2^5 2^6 2^7

比如:a128=a64a64=a64+64=a128a^{128}=a^{64}*a^{64}=a^{64+64}=a^{128}

那么a100a^{100}可以如何计算呢? 分析得:100=4+32+64

思考一下: (100)10=(1100100)2(100)_{10}=(1100100)_2 十进制和二进制转换关系

image