私はアルゴリズムの問題に取り組んでおり、高速化で壁にぶつかっています。
私は関数を持っていますf(i,j)
。ここで、i
およびj
は整数であり1 <= i <= j <= n
、上限がありn
ます。この関数は既に作成されています。
さらに、この関数は等式 を満たしf(i, j) + f(j, k) = f(i, k)
ます。
f(x, y)
多くの異なるペアを計算する必要がありx, y
ます。考えられるすべてのペアn
を格納するには十分な大きさであると仮定します。f(x,y)
x,y
このタイプの質問に対する既知のアルゴリズムはありますか? 私が現在使用しているものは、上記の等式を使用してメモ化し、以前に計算された数値のペアにf
還元しようとしますが、スマートな方法で還元していないため、時間がかかっていると思います。x,y
編集:素朴な方法で計算されたときにf(i, j)
比例して時間がかかると仮定します。j-i