摘要:
正常求a^b的方法是迭代,但是效率太低,时间复杂度为O(n) 所以就有了快速幂的诞生 快速幂的基本思想是二进制。将指数用化为二进制表示,那么就只剩下logb + 1位,然后如果能够在小于O(logn)的时间复杂度内建立出一张2^0~2^(log b +1)的表的话,就能在O(log n)的时间复杂度 阅读全文
摘要:
在数论,对正整数n,欧拉函数是小于或等于n的正整数中与n互质的数的数目(因此φ(1)=1) 互质指的就是gcd(a,b)=1。 所以对于某个数n,求他的欧拉函数可以直接用暴力。 1 int gcd(int a,int b){ 2 return b==0?a:gcd(b,a%b); 3 } 4 int 阅读全文