Problem1824--快速幂

1824: 快速幂

[Creator : ]
Time Limit : 1.000 sec  Memory Limit : 128 MB

Description

快速幂是一种快速计算底数 n 次幂的方法,实现快速幂函数 qpow(x, n) 计算 xn 的流程如下: 
1、若 n==0,则返回 1;否则设 y = qpow(x, n/2),进入下一步。
2、若 n 为偶数,则返回 y * y;否则进入下一步。
3、此时 n 为奇数,返回 x * y * y 
现给定 xnm,请参考 qpow(x, n),实现 qpow(x, n, m) 函数计算 x% m 的结果。

Input

多组数据。 
每组输入一行,包含三个正整数 xnm(1 ≤ x, n, m ≤ 109) 
文件以EOF结束。

Output

每组输出一行,包含一个整数,为 x% m 的结果。

Sample Input Copy

10 100 1
687 123789 123
1000000000 1000000000 123124

Sample Output Copy

0
45
19996

Source/Category