積分を使ってアルゴリズムの下限と上限を取得することになっていますが、その方法がわかりません。私は基本的な積分原理を知っていますが、アルゴリズムから積分を理解する方法がわかりません。
問題:
- 私の最初のforループはi=5n --->で始まり、6nの3乗になります。
- 次のものはj=5 --->で始まり、iに行きます。
- 次に、最後の次のforループはk = jで始まり、iに進みます。
- 次のものはj=5 --->で始まり、iに行きます。
当然、私の最初のステップは、これを3つの合計に変換することでした。だから私は3つの合計を設定しました。私がやりたいのは、可能であればこれらを1つの合計に単純化することです。そうすれば、合計の右側にいくつかの変数がある場合、積分を取ることができます。
積分に使用している範囲に関しては、Cormen、Leisersonなどによるアルゴリズムの概要から、積分による近似を行うことができます。
積分の性質:
- 上限の場合、積分の境界は次のようになります。上限n + 1、下限m。
- 下限の場合、積分の範囲は次のようになります。上限n、下限m-1。
可能であれば、3つの合計を1つに単純化する方法を知りたいです。物事が1つの総和になっている場合、私は積分を取り始め、そこから自分で進むことができます。
これは非常に大まかな擬似コードですが、実際のコードに似せるように最善を尽くしました。
for(i = 5n; i<6n^3; i++)
{
for(j =5; j<i; j++)
{
for(k=j; k < i; k++)
{
i - j + k;
}
}
}