int pow_mod(int a,int b,int n)
{
int ans ;
if(b == 0)
return 1 ;
ans = pow_mod(a,b/2,n);
ans = ans * ans % n ;
if( b%2 )
ans = ans*a % n ;
return ans ;
}原文:http://blog.csdn.net/chaoyueziji123/article/details/38468317