パズルの国のアリス

平等な綱引き(解答)

 ポーンを身長順に並べ,背の低い順にp0,p1,…,p15とすると,身長は等差数列をなすというのだから,piの身長はaidと書ける。結果だけをまず述べるなら,例えばp0p3p5p6p9p10p12p15を白のポーンとし,p1p2p4p7p8p11p13p14を赤のポーンとすれば,問題で述べた状況になる。地道に計算すれば,それは容易に確かめられよう。実際,赤と白のポーン8人の身長の合計は,それぞれ8a+60dで等しい。また,8人の身長の2乗と3乗は,どちらもそれぞれ8a2+120ad+620d2と8a3+180a2d+1860ad2+7200d3となり,やはり等しい。

 しかし,この赤白への分類をやみくもに行って結果をチェックするのは,いかに計算機の時代に入っているとはいえ容易ではなかろう。等差数列ということからくる対称性をうまく利用して,いかに面倒な計算を避けて分類するかということがこの問題の課題といえる。

 もし等差数列を作るポーンが4人だけで,それを2人ずつのチームに分けて身長の合計を等しくするというのが課題ならば,p0p3のチームとp1p2のチームに分ければよいことはほとんど自明だろうし,それ以外の分け方などありそうもない。だが,その場合は,2乗の合計や3乗の合計を等しくすることはできない。チームの人数が8人ずつなのはそれを可能とするためであり,実は,長さ2kの等差数列を2k−1個の要素からなるグループに2分割し,それぞれの合計とさらに2乗合計からk−1乗合計まですべてを等しくできるのだ。ポーンの問題はk=4のケースにすぎない。

 さて,この種の問題を処理するのに有効なのは,やはり数学的帰納法である。いま長さ2kの等差数列S={p0p1,…,p2k−1}があるとき,それを2k−1個の要素からなる2つのグループWRに分け,合計からk−1乗合計までのすべてを等しくできるとしよう。k=2の場合に,これが成り立つことは既に上に述べた。

 記述を簡潔にするために,多項式px)に対して,そのxXに関する合計ΣxXpx)を単にΣpX)と記すことにする。例えばX={1,2,4}ならΣpX)=p(1)+p(2)+p(4)だ。すると,先のWRに関する条件はΣW=ΣR,ΣW2=ΣR2,…,ΣWk−1=ΣRk−1と書ける。ここで気づいておくべきことは,この条件から,どんなk次未満の多項式px)に関してもΣpW)=ΣpR)が導けるということだ。その証明は,多項式を各項にばらすだけだから,わざわざ記すまでもあるまい。

 帰納法の次の段階に進もう。長さ2k+1の等差数列S′={p0p1,…,p2k+1−1}(公差d)が与えられたとする。その前半S={p0p1,…,p2k−1}に帰納法の仮定を適用し,それをWRに分割する。やはり記述を簡潔化して,集合{xcxX}をXcと記すことにすると,c=2k・dとおけばS′=S∪(Sc)と書ける。また,W′=W∪(Rc),R′=R∪(Wc)とおくと,W′とR′はどちらも2k個の要素からなり,S′の分割を定める。あとは,W′とR′が求める分割となることの証明だが,これは易しい。明らかに

だが,ikならxiも(xciもk次未満の多項式だから,帰納法の仮定よりΣW′i=ΣR′iだ。また,ikなら,(xckxkk次未満の多項式qx)の和の形に書けるので,

となり,同様に帰納法の仮定よりΣW′i=ΣR′iだ。

 以上の考察をもとに,piを赤白に分けたものが冒頭に述べた解である。ポーンが32人いた場合に,それを16人ずつのグループに分け,4乗の合計まで一致させることも,今やもう容易であろう。

問題はこちらです