We use cookies to ensure you have the best browsing experience on our website. Please read our cookie policy for more information about how we use cookies.
objectSolution{/* def sumDigits(number: Long): Long = { var rest = number; var sum: Long = 0; while (rest != 0) { sum = sum + rest % 10 rest = rest / 10 } sum }*/defsumDigitsFunc(number:Long):Long={defdivisions:Stream[Long]=number#::divisions.map(_/10)divisions.takeWhile(_>0).map(_%10).sum}@scala.annotation.tailrecdefsuperDigit(number:Long):Long={if(number<10){number}else{superDigit(sumDigitsFunc(number))}}defsuperDigit(number:String,repeat:Long):Long={superDigit(number.toCharArray.map(c=>(c-'0')*repeat).sum)}defmain(args:Array[String]):Unit={valstdin=scala.io.StdInvalArray(number,count)=stdin.readLine().split(" ");println(superDigit(number,count.toInt));}}
Cookie support is required to access HackerRank
Seems like cookies are disabled on this browser, please enable them to open this website
Super Digit
You are viewing a single comment's thread. Return to all comments →
My Scala solution: