- ベストアンサー
積が最大となるには…
『ある自然数Nをn個の自然数a_nにわけ、そのn個の自然数の積Mをとるとき、すなわち、 a_1+a_2+…+a_n=N 、a_1*a_2*…*a_n=M としたとき、Mが最大になるにはa_1=a_2=…=a_n=N/n となる事が必要十分である』ということを予想したのですが、証明できません。誰か優しい方、お願いしますm(--)m ちなみにそう思ったのはn=2,3の時にそうなった(コレは証明できた)からなだけなので、反証でもかまいません。高校数学の範囲でお願いします。
- みんなの回答 (11)
- 専門家の回答
質問者が選んだベストアンサー
No.4でkimkatさんは「たくさん動かす(3つ以上の変数を動かす)とどうなるかについては考慮されていません。」とおっしゃっているけれども、No.5, 7は(そして下記も)変数を二つしか動かさなくて、しかもきちんとした証明になっています。 Nがnで割り切れる場合に限るなら、No.7も随分簡単にできます。(L(N)という集合を考えるまでもなく、積M(a)が最大になるようなaは一通りしかないからです。)簡単になった分、丁寧に説明してみましょう。 N = mn, n≧2, m≧1であるとします。 初めに、q[1]=N-n+1, q[1]以外の全部の要素が1である列q[i] (i=1,2,…,n)を考えれば、 S(q)=q[1]+q[2]+…+q[n] = N M(q)=q[1]×q[2]×…×q[n] = N-n+1>0 (N≧nだから) です。 従って、ある列aが「S(a)=NであってM(a)が最大である(つまり、S(q)=Nであるどんな列qについてもM(a)≧M(q)である)」とすると、 M(a)≧M(q)>0 つまり M(a)>0 …(1) です。 さて、 H: 「aはS(a)=NであってM(a)が最大であるような列であり、しかもa[j]>m, a[k]<mとなるj, kを持つ」 と仮定します。(S(a)=mn だから、a[j]>mとなるjがあるのなら、a[k]<mとなるkも少なくともひとつはあります。) するともちろんk≠jです。そして、 a[k]≧1, a[j]≧1 …(2) (なぜならば、もしa[k]=0ならM(a)=0となり、(1)と矛盾するから。なお、a[j]≧1は仮定Hに含まれています。) そして、 a[j]-a[k]>1…(3) が成り立っています。 ここで a'[j] = a[j]-1 a'[k] = a[k]+1 a'[i] = a[i] (iはk,j以外の全部) という新しい列a'を作りましょう。すると、S(a')=Nであり、 M(a') /(a'[k] a'[j] ) = M(a) /(a[k] a[j] ) となります。(この式は、「列a'からa'[k]とa'[j]を除いた(n-2)個の要素の積と、列aからa[k]とa[j]を除いた(n-2)個の要素の積が同じだ」と言っているわけです。a'[i] = a[i] (iはk,j以外の全部)なのだから当たり前ですね。) 分母を払って、a'[j]、a'[k]に上記の式を代入すると、 a[k] a[j] M(a') = (a[k]+1)(a[j]-1)M(a) となります。右辺を展開し、さらに(a[k] a[j])を括り出して整理すると、 a[k] a[j] (M(a') - M(a)) = (a[j]-a[k]-1)M(a) です。一方、aはM(a)が最大であるような列なのだから、 M(a')≦M(a) つまり M(a') - M(a)≦0 です。(2)よりa[k]a[j]>0だから a[k] a[j] (M(a') - M(a)) ≦0 なので、 (a[j]-a[k]-1)M(a)≦0 となります。ところが、(1)によりM(a)は正の値を持つので a[j]-a[k]-1≦0 しかし、この不等式は(3)と矛盾しています。 ゆえに、仮定Hは誤りであり、 Hの否定:「aが、S(a)=NであってM(a)が最大であるような列であるならば、全てのiについてa[i] = mである」 が証明されました。 このような列aは(m, nを決めれば)ひとつだけ存在しますから、 「aが全てのiについてa[i] = mであるならば、M(a)が最大であるような列である」 は自明です。 Q.E.D.
その他の回答 (10)
- jlglg
- ベストアンサー率32% (8/25)
『ある自然数Nをn個の自然数a_nにわけ、そのn個の自然数の積Mをとるとき、すなわち、 a_1+a_2+…+a_n=N 、a_1*a_2*…*a_n=M としたとき、Mが最大になるにはa_1=a_2=…=a_n=N/n となる事が必要十分である』 ですが、自然数a_nといいながら、 a_1=a_2=…=a_n=N/n つまり、 n|N (nはNの約数) と書いてあるのが、不自然で、すんなり理解できません。ここらへんを補足要求します。 でも、stomachmanさんの回答は興味深いので、あとで読もうと思います。 この問題は次のようにするのが、一番興味深いと思われます。 与えられた自然数Nに対して、Nをいくつかの自然数に分割してから積をとる。 このとき、その積が最大となるのはどのように分割したときでしょうか? たとえば、 13=2+2+2+2+2+3 のとき積は、96 13=3+3+3+4 のとき積は、108(これが最大っぽい) 13=4+4+5 のとき積は、80 新しく数学カテに投稿しました。↓
- kimkat
- ベストアンサー率0% (0/3)
>a_kを動かすとなる時、a_k=x とおいても、a_1=a_2=…=a_(k-1)=x とおいてもどうもうまくいかないのですが…申し訳ありません…(涙) 「~とおく」の意味がよくわかりませんが、以下順序だててヒントです。 まず、No.8にあるようにすべて実数値だと思ってください。 まずa_kを固定して考えると、 ・a_1+...+a_{k-1}=N-a_kのもとで、a_1*...*a_kを最大化せよ という問題になりますね。ここでa_kを固定しているので、これは定数と思って、残りのk-1個が動いたときの最大値とそれを実現するa_1,...,a_{k-1}はなんでしょう? →帰納法の仮定からわかりますね その最大値はa_kの式として表せると思うので、今度はa_kを動かしてその最大値を最大化するa_kはなんでしょう? →合成関数の微分がわかっていると解けるはずです
- kimkat
- ベストアンサー率0% (0/3)
Nがnで割り切れるときは、もっと簡単に証明できます。 a_iが実数値をとると思って最大値を計算すると、a_iがすべて整数のときに最大であることがわかります。なので、整数に限定しても同じ値で最大がわかります。 あとは、No.2の私の書き込みがヒントです。
- stomachman
- ベストアンサー率57% (1014/1775)
帰納法を使わない証明ができたんで、またまたupします。記号はNo.5と同じです。 補助定理1: N≧n, n≧2であるとき、 a∈L(N)→ ∀i(a[i]≧1) である。 (証明は省略します。) 補助定理2: N≧n, n≧2であるとき、 a∈L(N)→ M(a)>0 (証明は省略します。) 定理Q(N): N≧n, n≧2であるとき、 a∈L(N) ⇔ (S(a)=N ∧ ∀j(m+1≧a[j]≧m)) である。 (ただし、m = floor(N/n), r = N - mnとする。) 証明 (→向きの証明) H1: 「a∈L(N)であり、あるk(1≦k≦n)についてm>a[k]であるようなaが存在する」 と仮定する。 すると、補助定理1により、 m>a[k]≧1 である。( m=1のときは、m>1となって矛盾するので、H1は偽である。) また、a∈L(N)なのだからS(a)=Nであり、従って、 a[j]≧m+1 であるようなjが少なくともひとつ存在する。さらに、 a[j]>a[k]+1 である。 H2: 「a∈L(N)であり、あるj(1≦j≦n)についてa[j]>m+1であるようなaが存在する」 と仮定する。 すると、a∈L(N)なのだからS(a)=Nであり、従って、 m≧a[k] であるようなkが少なくともひとつ存在するが、補助定理1により、 m≧a[k]≧1 である。さらに a[j]>a[k]+1 である。 H1, H2のどちらを仮定しても、 a'[k] = a[k]+1 a'[j] = a[j]-1 a'[i] = a[i] (iがjでもkでもないとき) によって新しい列a'∈Aを作ると、 ∀i(a'[i]≧1) であり、また、 S(a')=N M(a') = M(a) (a[k]+1)(a[j]-1)/(a[k]a[j]) である。ここで、 (a[k]+1)(a[j]-1)/(a[k]a[j]) = 1+(a[j]-a[k]-1)/(a[k]a[j]) だから、 M(a') - M(a) = M(a)(a[j]-a[k]-1)/(a[k]a[j]) である。 ところが a[j]>a[k]+1, a[k]≧1, a[j]≧1、 であるから、 a[j]-a[k]-1>0、a[k]a[j]>0 さらに補助定理2によってM(a)>0であるから、 M(a)(a[j]-a[k]-1)/(a[k]a[j])>0 従って、 M(a') - M(a)>0 である。これはa∈L(N)ではないことを意味するので、仮定H1とも仮定H2とも(どちらもa∈L(N)と仮定したのだから)矛盾する。従って、H1, H2はどちらも偽である。 以上から、 H1の否定:「a∈L(N)であるならば、すべてのk(1≦k≦n)についてa[k]≧mである」 H2の否定:「a∈L(N)であるならば、すべてのk(1≦k≦n)についてm+1≧a[k]である」 が証明できた。すなわち Q(N):「a∈L(N) → S(a)=N ∧ ∀k(m+1≧a[k]≧m)」 が証明できた。 (←向きの証明) a∈Aが S(a)=N ∧ ∀k(m+1≧a[k]≧m) であるならば、 M(a) = ((m+1)^r)(m^(n-r)) である。 一方、b∈L(N) であるとすると、 b∈L(N) → S(b)=N ∧ ∀k(m+1≧b[k]≧m) であるから、 M(b) = ((m+1)^r)(m^(n-r)) である。 従って、 S(a)=N ∧ ∀k(m+1≧a[k]≧m) を満たす任意の列aは a∈L(N) である。 Q.E.D.
- stomachman
- ベストアンサー率57% (1014/1775)
あちゃ、変な部分が残ってました。No.5の(2)の中の、 > m+1≧g[j]≧m (j=1,2,…,n) > です。 ってところ、削除です。
- stomachman
- ベストアンサー率57% (1014/1775)
やることは実に単純なんだけれども、書くとなるとずいぶん長くなっちゃいます。 自然数を{0,1,2,…}としましょう。 ● n個の自然数の列<a[1], a[2], …, a[n]>の集合をAとします。 ● a∈Aについて S(a) = a[1]+a[2]+ … +a[n] M(a) = a[1]×a[2]× … ×a[n] と書くことにします。 ● 「S(a)=NとなるaのうちでM(a)が最大であるようなaの集合」をL(N)と書く事にします。つまり、 a∈L(N) ⇔ (S(a)=N ∧ ∀b((b∈A ∧ S(b)=N) → M(a)≧M(b)) ってことです。 L(N)≠φ は自明です。 ところで、n=1の場合には「分ける」ったって分けようがありません。また、N<n のときは、S(a)=NならばM(a)=0。aの作り方と関係ありません。だからN≧n, n≧2のときだけが問題になります。 [1] 補題1: N = mn + r (m≧1, n>r≧0, n≧2) のとき、a∈L(N) → (S(a)=N ∧ ∀j(a[j]≧1) ∧ M(a)>0) なぜなら、 S(b)=NかつM(b)≧1となるbが存在する。(∵N≧nなので、全てのjについてb[j]≧1となるようにbを選べるから。)従って、a∈L(N) とすると、M(a)≧M(b)>0である。 一方もしa[j]=0となるjがひとつでもあればM(a)=0になってしまう。だから∀j(a[j]≧1)。 [2] さて、証明したいのは、次の命題です: Q(N): N = mn + r (m≧1, n>r≧0) のとき、 a∈L(N) ⇔ (S(a)=N ∧ ∀j(m+1≧a[j]≧m)) である。 これをN≧n(n≧2)について、Nに関する帰納法で証明します。 (1)N=n(n≧2)のとき。 m=1, r=0です。 明らかに a∈L(N) ⇔ S(a)=N ∧ ∀j(a[j]=1) であるから、Q(n)は真です。 (2) N>n(n≧2)のとき N = mn + r (m≧1, n>r≧0)です。 命題Q(N-1)が真であると仮定します。 L(N-1)の要素を一つ選んでg(g∈L(N-1))とします。すると命題Q(N-1)によりS(g)=N-1であって、しかも m+1≧g[j]≧m (j=1,2,…,n) です。つまりg[1], g[2], …, g[n]のうち、 (イ) n>r>0の場合(N≧mn+1)には、r-1個がm+1、n-r+1個がm、 (ロ) r=0の場合(N=mn)には、n-1個がm、1個がm-1 になっています。 ところでn≧2なので、(イ)(ロ)のどちらであってもg[i]=mであるようなiが存在します。そこで、 h[i] = m+1 (=g[i]+1) h[j] = g[j] (j≠i) である列hを作ることができ、このhは S(h) = N M(h) = M(g)(m+1)/m を満たします。 さて、aをL(N) の任意の要素(a∈L(N))とします。 (2-1) a∈L(N) → (S(a)=N ∧∀j(m+1≧a[j]≧m)) を証明します。 (2-1-1) a∈L(N) → S(a)=N これはL(N)の定義から明らかです。 (2-1-2) a∈L(N) → ∀j(m+1≧a[j]) を証明します。 任意のk∈{1,2,…,n}について、(補題1によりa[k]≧1なので) b[k] = a[k]-1 b[j] = a[j] (j≠k) である列bを作ると、 S(b) = N-1 M(b) = M(a)b[k]/a[k] となります。 ところでM(g)≧M(b)(∵M(g)∈L(N-1))だから M(g)≧M(a)b[k]/a[k] すなわち M(g)≧M(a)(a[k]-1)/a[k] が成り立っています。 また、M(a)≧M(h) (∵M(a)∈L(N))だから M(a)≧M(g)(m+1)/m が成り立っています。つまり M(g)≧M(g)((m+1)(a[k]-1)/(a[k] m) です。補題1によりM(g)>0, a[k]>0、そしてm>0であることを使って移項して整理すれば m+1≧a[k] つまり∀k∈{1,2,…,n}についてm+1≧a[k]であることが証明できました。 (2-1-3) a∈L(N) → ∀j(a[j]≧m))を背理法で証明します。 a[u]<m であるようなu∈{1,2,…,n}が存在したと仮定します。すると S(a)≧mn であるから、少なくともひとつ a[v]>m であるようなv∈{1,2,…,n}が存在しなくてはなりませんが、∀k(m+1≧a[k])なのだから、 a[v] = m+1 です。 そこで、 c[u] = a[u]+1 c[v] = a[v]-1 (= m) c[j] = a[j] (jがu,v以外のとき) によって新しい列cを作ると、 S(c)=N M(c) = M(a)m(a[u]+1)/(a[u](m+1)) です。また、a∈L(N)だから M(a)≧M(c) 従って、 1≧m(a[u]+1)/(a[u](m+1)) でなくてはなりません。整理すると a[u]≧m となって、これは仮定(a[u]<m)と矛盾します。 だから、仮定は誤りである。つまり、∀j∈{1,2,…,n}について(a[j]≧m)が証明されました。 以上で、 a∈L(N) → S(a)=N ∧∀j(m+1≧a[j]≧m) が証明できました。 (2-2) (S(a)=N ∧∀j(m+1≧a[j]≧m))→ a∈L(N) を証明します。 これは簡単です。 S(a)=N ∧∀j(m+1≧a[j]≧m) のとき、N=mn+rであるから、a[1],a[2],…,a[n]のうちr個がm+1、残りがmです。従って、 (S(a)=N ∧∀j(m+1≧a[j]≧m)) → M(a)=((m+1)^r)(m^(n-r)) です。一方 a∈L(N) → S(a)=N ∧∀j(m+1≧a[j]≧m) であるから a∈L(N) → M(a)=((m+1)^r)(m^(n-r)) です。このM(a)をL(N)の定義に代入すれば ∀b(S(b)=N → M(b)≦((m+1)^r)(m^(n-r))) であるから、 (S(a)=N ∧ M(a)=((m+1)^r)(m^(n-r))) → a∈L(N) よって (S(a)=N ∧∀j(m+1≧a[j]≧m)) → a∈L(N) です。 (2-1)(2-2)によって、Q(N-1)→Q(N) が証明できました。 (3)かくて帰納法により、N≧nであるような全ての自然数Nについて命題Q(N)が証明できたことになります。 Q.E.D.
- kimkat
- ベストアンサー率0% (0/3)
No.3の回答は、説明としてわかりやすいとは思いますが、厳密な意味での「証明」にはなってませんね。 なぜなら、a_1=a_2=…=a_n=N/nの状態からちょっとだけ動かす(2つの変数だけ動かす)とMは必ず小さくなるということをいっているにすぎません。 でもたくさん動かす(3つ以上の変数を動かす)とどうなるかについては考慮されていません。 あと、先ほどの回答で言い忘れましたが、 >Mが最大になるにはa_1=a_2=…=a_n=N/n となる事が必要十分である とあるので、当然Nがnで割り切れるものとして説明しています。
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
仮にxという数で n個に分けることができたとすると x + x + … + x + x = N x * x * … * x * x = M この中の1つのx を(x+d)としたとすると、 全体のNは、変わらないのでもう1つのx が(x-d)になる。 その時のMは、 (変わらない部分)(x+d)(x-d)となって x^2 から x^2 - d^2 になって変化分の2乗だけ全体から減ることになる。 つまり、「xという数で n個に分けることができた」状態を変化させることは、Mを減少させるので、元のMが最大。
- kimkat
- ベストアンサー率0% (0/3)
数学的帰納法です。 1) まずa_nを固定してほかを動かしたときにいつ最大になるかを考えます(ここで帰納法の仮定を使う) 2) 次にa_nを動かしたときにいつ最大になるかを考えます
- nabla
- ベストアンサー率35% (72/204)
「与えられた実数Aをn個の正の実数anにわけその積が最大になるのはn等分したとき」ならば簡単に証明できますが、自然数の範囲でやろうと思うとN/nが自然数とは限らないので、なかなか難しいですね。 上の命題なら証明は相加平均と相乗平均の関係を使えば簡単です。
補足
早速のお返事ありがとうございます。 a_1=a_2=…=a_(k-1)までは仮定から成り立たせて、 a_kを動かすとなる時、a_k=x とおいても、a_1=a_2=…=a_(k-1)=x とおいてもどうもうまくいかないのですが…申し訳ありません…(涙)