2011-11 / 数学問題botを一問解いてみた
思わずへーと言いたくなる問題ですね。色々考えたのですが次の形が一番すっきりまとまりました。
問題を簡単にするために、与えられた数の一の位を抽出して考える。(以下数字のみのものは全て一の位のことを指す)
10の倍数を作るには、
- 与えられた数から5の倍数と2の倍数(偶数)をそれぞれ一つ作る
- 与えられた数から10の倍数を一つ作る
のどちらかを満たした後、乗算で10の倍数にできる。2の倍数は奇数同士の加減算、または偶数が1つあれば良い。
与えられた4つの数で5の倍数を作ることを考えると、その中に元々5の倍数がある場合、既に条件を満たしているので、 考えるべきは、それに含まれない 1,2,3,4,6,7,8,9の中から4つ選んだ場合 になる。
上記以外のパターンで奇数と偶数の組合せによって5の倍数を作るのは
- 4/6/1/9の中から2個選んだ加減算
- 2/8/3/7の中から2個選んだ加減算
- 一の位が同じ数が2つあった場合(11と21等)の減算
のいずれかで可能である。例えばこんな感じ。
- 4と9なら 9-4=5
- 8と3なら 8-3=5
- 2と8なら 2+8=10=5*2
- 22と12なら 22-12=10=5*2
4つの数を選ぶと、全ての場合で 1,2,3 のいずれかに当てはまる。
負の数における思考は正・負の値と和・差で適宜逆転させることで自然数と同等に扱うことが可能なので考えずとも良い。 よって必ず10の倍数が生成できることが分かる。
とまぁ…こんな感じかな。とんちっぽいけど思考を整理するとだいぶ余分なものが削げ落ちました。
剰余使う発想もありましたが、1~3をそれぞれ分けてそれで一般化すればもっとすっきりしますかね。あまり好きじゃないので今回のような証明の時には極力使わないのですが。
後は適宜証明の書式に落とし込めばいいんじゃないかな。