object Lychrel
{
def digital_sum(a: BigInt): Int = {
var sum: Int = 0
var t = a
while (t > 0) {
sum = sum + (t % 10).toInt
t = t / 10
}
sum
}
def main(args: Array[String]) = {
var maxsum = 0
for (a <- 2 until 100) {
var t: BigInt = 1
for (b <- 1 until 100) {
t = t * a
maxsum = maxsum max digital_sum(t)
}
}
println(maxsum)
}
}