# Задача 56
# Макисмальная сумма цифр
# Гугол (10100) - гигантское число: один со ста нулями;
# 100100 почти невообразимо велико: один с двумястами
# нулями. Несмотря на их размер,
# сумма цифр каждого числа равна всего лишь 1.
#
# Рассматривая натуральные числа вида ab, где a, b < 100, какая
# встретится максимальная сумма цифр числа?

def summ_of_digits(i):
    s = 0
    while i > 0:
        s += i % 10
        i //=10
    return s

max = 0
max_a = 0
max_b = 0
for a in range(1,100):
    for b in range(1, 100):
        if summ_of_digits(a**b) > max:
            max = summ_of_digits(a**b)
            max_a = a
            max_b = b

print(max, max_a, max_b) #972 99 95