$N$ can be at most $10^{10}$ and $M$ can be at most $10^7$. How can I find the first three digits of $N^M$ ?
Is there an easy way to find this like the process of finding last digit ?
|
$N$ can be at most $10^{10}$ and $M$ can be at most $10^7$. How can I find the first three digits of $N^M$ ? Is there an easy way to find this like the process of finding last digit ? |
|||||
|
|
Use logarithms. If $X = N^M$, compute $z = 3 + (\log_{10} X \mod 1)$ and then round $y = 10^z$ down to the next integer. This should work for $X \ge 10^3$ and should give a correct answer in IEEE arithmetic for the desired range of $N$ and $M$. For smaller X$, just compute it directly. |
|||
|
|