Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function lastDigit(as){
- var product = "1";
- for(var i = as.length - 1; i >= 0; i--){
- var num = as[i]
- //console.log(num)
- //console.log(bigPower(num.toString(), product))
- product = bigPower(as[i].toString(), product);
- }
- var prodArr = product.split("");
- console.log(prodArr[prodArr.length - 1].toString());
- return prodArr[prodArr.length - 1].toString();
- }
- function bigPower(base, exponent){
- var product = base;
- for(var i = 1; i < parseInt(exponent); i++){
- product = multiply(product.toString(), base.toString());
- }
- return product;
- }
- function multiply(a, b) {
- const product = Array(a.length+b.length).fill(0);
- for (let i = a.length; i--; null) {
- let carry = 0;
- for (let j = b.length; j--; null) {
- product[1+i+j] += carry + a[i]*b[j];
- carry = Math.floor(product[1+i+j] / 10);
- product[1+i+j] = product[1+i+j] % 10;
- }
- product[i] += carry;
- }
- return product.join("").replace(/^0*(d)/, "$1");
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement