Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- long int mo(long int b, long int p, long int m)
- {
- long int r;
- if(p==0){
- r = 1;
- }
- else if(p%2==0){
- r = (mo(b,p/2,m)*mo(b,p/2,m))%m;
- }
- else{
- r = (mo(b,p-1,m)*(b%m))%m;
- }
- return r;
- }
- int main()
- {
- long int b, p, m, res;
- while(scanf("%ld %ld %ld",&b,&p,&m) != EOF){
- res = mo(b, p, m);
- printf("%ld\n", res);
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement