『数列の部分列』解答


◆富山県 いくまる さんからの解答。

{bn},{cn},{dn}を

により定義する。
{An}の任意の要素は1以上であるから となる。
{bn}の要素は1または2であるから、{bn}より適当にp個(10≦p≦20)を選び出し、和を20にすることが出来る。
すなわち

bm1 + bm2 +‥+ bmp =20

を満たすbm1,bm2 ,‥, bmpを選び出すことが出来る。
ここで

B1=bm1, B2=bm2,‥, Bp=bmp

により{Bn}を定義する。
同様に{cn},{dn}から適当に選び出すことより
{Cn},{Dn}を定義する。
このとき{Bn},{Cn},{Dn}は{An}に依らず与えられた3つの条件を満たす。

よって題意は示された。


◆飯田 孝久 さんからの解答。

Aの列には、2が40項あります。
これの初めの30項を順番にB,C,Dに振り分ければいいのではないですか。

条件をもっときつくできるような気がします。
それとも、問題の解釈に勘違いがあるのかも?


◆東京都 Asami さんからのコメント。

なるほど!
いくまるさんの解答も飯田さんの解答も素晴らしいですね!
何が素晴らしいかと言えば、いくまるさんの解法だと、与えられた列の総和が100という事実をまったく使っていないという点であり、飯田さんの解法は、秒殺的な解法という点で、それぞれ優れていると思います!

まず、いくまるさんの解答の場合、

b1,b2,…,b20の総和は20以上だから、もし20丁度ならそれでOK。
20を越えていても、“1”を少なくとも1つ含むようないくつか項を減らすことによって、部分和を19または20できるから、19なら後から“1”を加えて補えばいいわけですね。
(“1”が全くなければ“2”が余裕を持って10項存在するので問題ない!)

あるいは、すべて“2”ならOK。
“1”が少なくとも1つあれば、b1,b2,…,b20の総和は20以上39以下だから、その部分和で20の倍数を作ることができるので、和が丁度20のものが存在する。としてもいいかと思います。

とにかく、“どの項も1又は2”という事実をフルに活用すれば、いくまるさんのように解くことができて、それを更に追求すれば飯田さんの解法になるわけですね。

実は、当初“どの項も1または2”という条件を“どの項も1以上”という条件で考えていました。
もしこの場合だと、本命題が成り立つかどうか、是非考えてみて下さい!


 『数列の部分列』へ

 数学の部屋へもどる