快速幂
递归
long long quick_pow(long long x,long long y,long long p)
{long long tmp=quick_pow(x,y>>1,p);tmp=tmp*tmp%p;if(y&1) return tmp*x%p;else return tmp;
}
迭代
long long quick_pow(long long x,long long y,long long p)
{long long res=1;while(y){if(y&1) res=res*x%p;x=x*x%p;y>>=1;}return res;
}