学校の先生が演習の時間に出した問題です。
1001個の実数 x_1、・・・、x_1001 がある。各kについて、x_k (1≦k≦1001) を除いた残
りの1000個の実数を、500個ずつの総和が等しい2つの組に分ける方法が存在したという。
このとき、 x_1=x_2=・・・=x_1001 を示せ。
(コメント) 3個の実数 x_1、x_2、x_3 がある。各kについて、x_k (1≦k≦1001) を除いた
残りの2個の実数を、1個ずつの総和が等しい2つの組に分ける方法が存在した
という。すなわち、x_2=x_3、 x_1=x_3、x_1=x_2 より、x_1=x_2=x_3 となる。
所要の性質を持つのは全数が同じ値のとき...。何となく正しいことは理解でき
るが、一般的に示すにはどうしたらいいのだろう?
DD++さんからのコメントです。(平成28年7月24日付け)
整数範囲、有理数範囲でなら普通の高校数学範囲でもわりと簡単ですが、実数範囲とな
るとそれ以上の武器が欲しくなりますね。武器はどのレベルまで用いていいのでしょう?
まず、条件を満たす1001個の実数の組 {x_1, x_2, ……, x_1001} について、任意の定数 c
に対して、{x_1+c, x_2+c, ……, x_1001+c} も条件を満たします。
(元の数と同じ組み合わせ方にすれば双方の和が 500c ずつ大きくなるだけなので)
また、任意の定数 c に対して、{cx_1, cx_2, ……, cx_1001} も条件を満たします。
(元の数と同じ組み合わせ方にすれば双方の和が c 倍になるだけなので)
この2つの性質を用いて、整数範囲、有理数範囲、実数範囲と順に範囲を広げながら証明
します。
(1) 整数範囲での証明
条件を満たす1001個の整数の組 {x_1, x_2, ……, x_1001} について、このうち最大のものと
最小のものの差を d (0以上の整数)とします。
まず、任意の1つを取り除いた残り1000個は、500個ずつにわけて等しい合計を作れること
から、その1000個の合計は偶数です。
もし、1001個の整数の合計が偶数なら、どの1つを取り除いても残りの合計が偶数なので、
1001個の整数それぞれが全て偶数であることになります。
よって、この場合、{(1/2)x_1, (1/2)x_2, ……, (1/2)x_1001} も条件を満たす1001個の整数の
組であり、そのうち最大のものと最小のものの差は d/2 です。
一方、もし、1001個の整数の合計が奇数なら、同様に1001個の整数それぞれが全て奇数
であることになります。
よって、この場合、{x_1+1, x_2+1, ……, x_1001+1} は条件を満たす1001個の偶数の組なの
で、{(1/2)(x_1+1), (1/2)(x_2+1), ……, (1/2)(x_1001+1)} は条件を満たす1001個の整数の組
であり、そのうち最大のものと最小のものの差は d/2 です。
つまり、合計が偶数でも奇数でも、最大と最小の差が d である整数の組から最大最小の
差が d/2 である整数の組を作ることができます。
これを繰り返すと、最大と最小の差が d/4 である組、最大と最小の差が d/8 である組、と
作っていけることになりますが、1001個の整数の組である以上、最大最小の差は整数にしか
なりえません。
よって、d は「任意の回数だけ、2で割っても整数のままである」という性質を持つ必要があ
りますが、そのような整数は0しか存在しません。
したがって、条件を満たす1001個の整数の組は最大と最小の差が0のもの、つまり1001個
が全て同じ数の場合しかありません。
(2) 有理数範囲での証明
条件を満たす1001個の有理数の組 {x_1, x_2, ……, x_1001} について、全ての数の分母の
最小公倍数を M とします。このとき、全てを M 倍した {Mx_1, Mx_2, ……, Mx_1001} は条件を
満たす1001個の整数の組になるので、(1) よりこれらは全て同じ数です。
よって、元の1001個の有理数も全て同じ数です。
(3) 実数範囲での証明(高校範囲を少し逸脱します)
条件を満たす1001個の実数の組 {x_1, x_2, ……, x_1001} について、高々1001個の(※999
個で十分ですが本質ではないので1001にしておきます)有理数体上一次独立な無理数の組
α[1], α[2], ……, α[n] と 1001(n+1) 個の有理数 A[i,j] を用いて、
x_k = A[k,0] + A[k,1]α[1] + A[k,2]α[2] + …… + A[k,n]α[n]
とそれぞれの数を書くことができます。このとき、x_k を除いて作った等式の有理数項から、
1000個の有理数 {A[1,0], A[2,0], ……, A[k-1], A[k+1], ……, A[1001,0]} を500個ずつにわけ
て合計を等しくする式が得られます。これは1≦k≦1001 の全てについて言えるので、1001個
の有理数 {A[1,0], A[2,0], ……, A[1001,0]} は条件を満たす1001個の有理数の組となってい
ます。よって、(2) より、これらは全て同じ数です。
同様に、α[1] の係数から、1001個の有理数 {A[1,1], A[2,1], ……, A[1001,1]} は全て同じ
数、α[2] の係数から、1001個の有理数 {A[1,2], A[2,2], ……, A[1001,2]} は全て同じ数、…
であることが言えるため、結局元の1001個の実数の組 {x_1, x_2, ……, x_1001} は全て同じ
数です。
(コメント) なるほど!洗練された証明ですね。感動しました。DD++さんに感謝します。
鱒さんからのコメントです。(平成28年7月25日付け)
なるほど...RをQ上のvector空間と見ると自然に拡張できるんですね。(ハメル基底でし
たっけ)実は、これ実数じゃなくて任意の(標数0の)体で成り立つんです(と言ってしまうと解き
方がほとんど決まってしまうので言わなかったのですが...)
DD++さんからのコメントです。(平成28年7月25日付け)
そういうことですね。とはいえ、問題自体が初等的なので解答も初等的に行きたかったの
ですが……何か方法はないものでしょうかね。
鱒さんからのコメントです。(平成28年7月27日付け)
僕も行列で解いてしまいました...ないんでしょうかね...。