したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | |

【売買!】汗達磨の大相撲刑事ナイト

910dotson。おとめ組:2003/10/20(月) 20:20
>>889 再掲
-------------------------------------------------
互いに相異なる正の整数a_1,----,a_m
(m>=1)の和に分割し、それらの積a_1*-----*a_m
を最大にするには、どのようにすればよいでしょうか?
-------------------------------------------------
作り方(アルゴリズム)を答えればいいんですかね?
TeXの構文を忘れたので、適当に書きます。

-------------------------------------------------
値は全て自然数(正整数)のみを対象とする。
Nに対して、
Σ_{i=1}^{x} i ≦ N を満たすxのうち最大のものをnとする。
Σ_{i=1}^{n-1} i + k = N なるkを求める。
nの求め方より、n≦k<n+(n+1)となる。
m = n-1,
b_i = i+1(i=1,2,…m-1), b_m = k + 1とおく。
N = Σ_{i=1}^{m} b_i と表せる。
以後、b_i (i=1,2,…m)の値を操作する。

(1) b_mとb_{m-1}の差が3以上のとき、
b_m := b_m - p, b_{m-1} := b_m + p (:=は代入記号)
ただし、p = [(b_m - b_{m-1})/2] ([]はガウス記号)
と置き換える。
その後、もう1度(1)の操作を行う。
差が3未満のときは、操作(2)へ移る。
(2) b_iとb_{i-1}について、
(1)と同様の操作i=m-1から順に行う。
置き換えを行った後は、操作(1)に戻る。
全てのi(i = m-1,…,1)に対して置き換えを行わなかった場合、
b_i (i=1,2,…m) の操作を終了する。

上記操作が終了したとき、数列{b_m}が題意を満たす。
-------------------------------------------------

ほんまかな〜?


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

※画像アップローダーはこちら

(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)

掲示板管理者へ連絡 無料レンタル掲示板