合計を求める必要がある一連の数値があります。最初の反復操作の値は 1 で、2 番目は 20 です。その後のすべての反復では、式 n * (n + 1) / 2 で前の結果が使用されるため、3 番目の反復では i03 = 20 * (20 + 1) / 2、そして 4 番目の i04 = i03 * (i03 + 1) / 2. これは、i20 = i19 * (i19 + 1) / 2 の 20 回目の反復まで続きます。メモ化を使用してこれを実行したいと考えています。これは私のコードです:
def outFun():
def sumFun(squares, total = 0, CONST = 20):
if squares > 2:
total = sumFun(squares - 1) * int((sumFun(squares - 1) + 1) / 2)
elif not squares - 2:
total = CONST
return total
return 1 + sumFun(20)
私は何を間違っていますか?