Define a function that takes in two non-negative integers a
and b
and returns the last decimal digit of a^b
. Note that a and b may be very large!
For example, the last decimal digit of 9^7 is 9, since 9^7 = 4782969. The last decimal digit of (2^200)^(2^300), which has over 10^92 decimal digits, is 6. Also, please take 0^0 to be 1.
You may assume that the input will always be valid.
Examples
lastDigit 4 1 shouldBe
4
lastDigit 4 2 shouldBe
6
lastDigit 9 7 shouldBe
9
Tests
lastDigit 10 (10^10)
lastDigit (2^200) (2^300)
This challenge comes from dburgoyne on CodeWars. Thank you to CodeWars, who has licensed redistribution of this challenge under the 2-Clause BSD License!
Want to propose a challenge idea for a future post? Email yo+challenge@dev.to with your suggestions!