给定两个数nk 求n^k的前三位和最后三位.
求后三位的话:直接快速幂,对1000取模就好了.
求前三位,对于给定的一个数n它可以写成n=10^a其中这个a为浮点数则t=n^k=(10^a)^k=10^a*k=(10^x)*(10^y);其中xy分别是a*k的整数部分和小数部分,对于t=n^k这个数,它的位数由(10^x)决定,它的位数上的值则有(10^y)决定,因此我们要求t的前三位,只需要将10^y求出,在乘以100,就得到了它的前三位.
分析完,我们再整体看,设n^k=10^z;那么z=k*log10(n)
fmod(z1)可以求出x的小数部分.