問題
1〜10000の整数を全部書き並べるとき、数字1を何回書くことになるか。

辻の解説
最後の整数10000を書くとき、1は1回書いているが、まず、1から9999までの
整数を書くとき1を何回書くことになるかを調べる。このとき数字1を何回書くことになるかは、
1から9999まで書いても、0から9999まで書いても同じである。
さて、0から9999までの整数を書くとき、たとえば12は0012というように0を補って4桁にして書くと、
ひとつの整数を書くのに4個の数字を使うので、0000から9999までの10000個の整数を書くとき、
全部で4×10000個、すなわち40000個の数字を書くことになる。
このとき0〜9の10個の数字は、どれも同じ回数だけ書くことになるから、1の数字は
40000個の中の10分の1、つまり4000回書くことになる。
1は最後の10000でも1回書くから、答は4001回。

上記解説で分かりにくいという人は、おそらく、解説の中の「このとき0〜9の10個の数字は、どれも
同じ回数だけ書くことになる」という部分だろうと思いますが、下記のように解説すればもっと分かり
やすいでしょう。

0000から9999までの整数の代わりに、00から99までの100個の整数で考える。
さらに、0〜9までの10個の数字を A, B, C, D, E, F, G, H, I, J の10個の文字に置き換える。
これらの文字を使って □□の2個の□に文字を入れる場合に、何とおりの入れ方があるかを
考えると、左の□に10とおり、その1つに対して、右の□に10とおり考えられるから、全部で
10×10=100 (とおり)。 この100とおりをすべて書き並べたとき、文字は全部で200個書くことに
なるが、どの文字も同じ回数だけ書いている。数字を文字に置き換えずに数字のままで考えても
同じことである。従って、0〜9までの10個の数字をつかって、数字を2つ左右に並べるとき、その
並べ方は100とおりであり、これらを全部書き並べたとき、0〜9までの数字は同じ回数だけ書くこと
になる。この100とおりの並べ方の場合の数は00から99までの整数の個数と一致する。
すなわち数字2個を使った1とおりの並べ方は00〜99の整数の1つと1対1に対応している。
よって、00〜99の整数100個を書き並べたとき、0〜9の10個の数字は、どれも同じ回数だけ
書いている。

注1 上記解説で0001から9999までではなく、0000から9999までを考えたのは、0から9までの
    10個の数字が同じ回数だけ現れるようにするためです。 

注2 この問題は対等性をテーマにした問題例でしたので、模範解答では同じ回数現れることを
   「対等」という言葉を使って表現してあります。

この問題に対して、ここまで詳しく解説するのは、私ぐらいだろう。(笑)

このページで示した解法は、桁数が多くなっても瞬時に計算できる考え方であり、数学が得意な人
は、この問題が重複組み合わせと整数が1対1に対応していることを最初の段階で見抜けること
でしょう。しかし、答案としては最初に示してある模範解答で十分です。

※桁数が少ないと別の解法で解く人が多いと思います。
  ネットで調べるとこんな感じです。↓
https://oshiete.goo.ne.jp/qa/7794943.html
IMD学院TOP