第170問の解答
1.問題 [場合の数?]
あるクラスで、カードを使ったゲームをしました。
まず、クラス人数の2倍の枚数のカードを用意し、1から順に通し番号を記入しました。次に、生徒たちに2枚ずつカードを配ります。
生徒は、受け取った2枚のカードの番号の差を自分の得点とします。例えば、14番と23番のカードを受け取ったなら、得点は23−14=9点となります。
このとき、全員の得点の和は、最も大きいときで400点になります。
では、全員の得点の和は、全部で何通り考えられるでしょうか。
2.解答例1(TORAさん、CRYING DOLPHINさん、Miki Sugimotoさん、俊介さん他)
クラスの人数をn人とします。
まず、次のことを示します。
- 得点の和の最小値はn、最大値はn2
- 得点の和は、全て2で割った余りが等しい
(初期値n、公差2の数列)(最小値)
クラスの生徒に1連番号を振ります。
m番目の生徒が受け取るカードを[am,bm](am<bm)とすると、1≦bm-amより、
得点の和S=Σ(bm-am)≧nとなります。
実際、[1,2],[3,4],・・・[2n-1,2n]のときS=nとなるので、Sの最小値=nとなります。(最大値)
S=Σbm-Σam
≦{(n+1)+(n+2)+・・+2n}-{1+2+・・+n}
={1+2+・・+2n}-{1+2+・・+n}×2
=2n×(2n+1)/2-n×(n+1)/2×2
=n×(2n+1)-n×(n+1)
=n2
実際、[1,n+1],[2,n+2],・・・[n,2n]のときS=n2となるので、Sの最小値=n2となります。(2で割った余りが等しい)
S=(Σbm+Σam)-2×Σamより、SとSS=(Σbm+Σam)=n×(2n+1)の差は偶数。
よってSSが偶数(n:偶数)ならSは常に偶数、SSが奇数(n:奇数)ならSは常に奇数。以上から、最大値n2=400よりn=20。
また、Sがとる値の場合の数は、(n2-n)/2+1=(400-20)/2+1=191。答:191
(補足)
厳密にいうと、Sはnからn2までの任意の偶数または奇数の値をとることを示す必要がある。下記は、n=20のときの1例である。以上
(帰納法による補足の証明)
n=kのときに補足が成り立つ(Sは、kからk2+1のk(k-1)/2+1通りの偶数または奇数の値をとる)と仮定する。
n=k+1のとき:
k+1番目の生徒のカードを[2k+1,2k+2](得点1)とすると、帰納法の仮定からk番目の生徒までの得点がk〜k2なので、合計k+1〜k2+1。さらに上図のように、k+1番目の生徒の小さいカードとk番目〜1番目の生徒の大きいカードとを次々と交換していけば、得点は2点ずつ増えて最大(k+1)2になる。
よって、n=k+1のときにも補足は成り立つ。
以上から、数学的帰納法により、任意のnについて補足が成り立つことが示された。