Pythonで質問があり、それに対する回答を作成しましたが、回答の効率を高めようとしています。
関数、再帰、基本的なものだけを使用できません..
質問は:
2209 の 3 乗は 1000 桁です。合計が最大になる 12 個の連続した数字を見つけます。
例: 5 の 36 乗は 14551915228366851806640625 と等しくなります。最大合計を生成する 12 の連番は 836685180664 です。
sumOfBig=0
Big=""
x=5**36
strp=str(x)
s=len(strp)
print(x)
print()
for i in range(s-11):
new=strp[i:i+12]
l=0
for j in new:
l=l+int(j)
print(i)
print(new)
print(l)
print()
if l>sumOfBig:
sumOfBig=l
Big=new
print(Big)
print(sumOfBig)
より良いコードのアイデアはありますか?