昨日の「たけしのコマネチ大学数学科」は、特番が入り、休讲だった。そこで、过去の「数学オリンピック」で出题された问题を考えてみたいと思う。
问题:一泊500円のホテルがあり、そこに500円玉を持った、n人の人と1000円札しか持っていない、n人の合计2n人の客を泊らせたい。ホテルの受付は受付开始时には、つり銭を准备していないとする。つり銭が不足しないような客の来かたは全部で何通りあるか。
数学の问题は、时としてシュールだ。ホテルと名前はついているものの、一泊500円と格安。秋山仁センセのような风体をした日雇い労働者たちが、500円玉、あるいは1000円札を握り缔め、その日の宿を求め、列をなしている光景を想像してしまう。百円玉や10円玉を握り缔めている人がいないのは、なぜなのか……问题とは、まったく関系のない妄想が広がる。
で、一般项(n)を求める问题は难しいので、とりあえず、500円玉を握り缔めている人が5人、1000円札を握り缔めている人が5人、総计10人で考えてみる。普通に考えると、500円玉(つり銭不要)の人と1000円札(つり銭必要)の人を2列に并ばせ、つり銭不要の人を优先して受け付ければ问题ないと思う。まあ、この问题は、これらの人たちが1列に并んでいると考える。この并び方が何通りあるかを考えるというものだ。最初のお客は、当然、つり銭がないので500円玉を握っている人だ。
まったくランダムに10人が1列に并んだとき、その并び方の组み合わせは、10×9×8……×1で、10!(10の阶乗)で360万通りにもなる。でも、この组み合わせの中には、当然、つり銭が払えない场合も含まれる。
そこで、500円玉の5人と、1000円札の5人の2つのグループに分けて考える(当然だよね)。受付の人にとっては、Aさん、Bさんという个人が问题なのではなく、500円玉を握り缔めているか、1000円札を握り缔めているかが问题だ。
ふたつのグループを表にしてみた。X轴は500円玉の人、Y轴は1000円札の人……。でも、つり銭が足りなくなっては困るので、X轴(500円玉)≧Y轴(1000円札)というルールを适用する。つまり、1000円札の客を受け付けるのは、つり銭があるときだけ。このルールを适用するだけで、表の半分は消える。
左図の赤い线は、500円玉の人と1000円札の人を交互に受け付けた场合。右の図は、500円玉の5人を优先的に受け付け、その后、1000円札の人を受け付けた场合だ。この図は、どの経路を取っても、つり銭が足りなくなることはない。そこで、各格子点に行く経路の组み合わせ数を考えてみる。
ひたすら、経路を数えてみると、5人+5人=10人の场合は、42通りの组み合わせがあることがわかった。「ん? この表、どこかで见たことがあるぞ!」と思ったら、「カタラン数」だ。
つまり、问题文から、これは「カタラン数」を使えば求めることができることを见抜き、「カタラン数」の公式を知っていれば、答えることができる。または、问题文からカタラン数の公式を导出できる天才だ。この问题は1990年の国际数学オリンピック(IMO)日本代表选抜2次试験に出された问题の类题で、第1次予选の通过者123人中、10人が正解したとのこと。
ちなみに、この问题の解答、カタラン数の公式は、
5人・5人の场合で検算してみよう。
「たけしのコマネチ大学数学科」29讲で「カタラン数」の问题が出题されたときは、「カタラン・ワカラン数」だったが、なんとなくだけど、少しわかったような気になった。
最近のコメント