三角形の数字について挑戦しています。ポイントは、三角形の数字のいずれか2つの合計が入力nと等しいかどうかを調べることです。私はそれを働かせましたが、明らかにそれは時間がかかり、より速く何かをしたいと考えています。ネストされたループを高速化する
私はそれを書いた方法で、すべての三角形の数字をリストに入れてから、リストをループして、数字のペアが条件を満たすかどうかを調べます。私はどのようにループを速くするのか分かりませんし、ここで同様の記事を読むことで、この状況にどのように適用するのか分かりません。ここ
コードである:
def Triangular(n):
lst = []
for i in range(1, n + 1):
lst.append((i** 2 + i)//2)
yn = False
for i in lst:
for j in lst:
if i*i + j*j == n:
yn = True
break
else:
continue
return yn
[codereview.se] – zondo
_質問: "三角形の数字のうちの2つの合計**が入力nと等しいかどうかを調べることが重要です" _ - なぜコードが見えるのですか**四角形の合計**で? – Eric
私は – JonnyDoeInWisco