Problem 63 「べき乗の桁の個数」
5桁の数 16807 = 7^5は自然数を5乗した数である. 同様に9桁の数 134217728 = 8^9も自然数を9乗した数である.
自然数を n 乗して得られる n 桁の正整数は何個あるか?
def hoge():
cnt = 0
# 10**1=10(2桁)、10**2=100(3桁)、... なので10以上の数字のn乗がn桁になることはない
for m in range(1, 10):
n = 1
while 1:
if len(str(m ** n)) == n:
cnt += 1
else: # これでいいのかちょっと疑問
break
n += 1
return cnt
print(hoge())