## 問題の概要
正七角形の各頂点 Ak に積まれたブロックの個数 ak が与えられています。隣り合う頂点の間でブロックを移動させる操作を繰り返し、すべての頂点に積まれたブロックの個数を等しくすることが目標です。 (1) Ak から Ak+1 へブロックが運ばれた回数を xk 、Ak+1 から Ak へブロックが運ばれた回数を yk とし、zk=xk−yk と定義します。zk (2≤k≤7) を z1 で表す必要があります。ただし、A8 は A1 とします。 (2) すべての頂点に積まれたブロックの個数を等しくするための操作回数の最小値を求めます。
## 解き方の手順
(1) zk を z1 で表す まず、ak の総和を求め、それを7で割ることで、すべての頂点に等しく積み上げられたときのブロックの個数を求めます。 S=∑k=17ak=24+15+17+13+28+14+29=140 平均値は 140/7=20 です。したがって、各頂点に最終的に20個のブロックが積まれることになります。 zk=xk−yk は、頂点 Ak から Ak+1 方向に移動したブロックの正味の個数を示します。 頂点 A1 に注目すると、最終的に20個のブロックになる必要があります。つまり、a1=24 から 20 にするために、いくつかのブロックを隣の頂点に移動させる必要があります。 一般に、頂点 Ak のブロックの個数の変化は、zk−1−zk=ak−20 で表されます。ここで、z0=z7 とします。 zk=xk−yk と定義されているので、zkをz1を用いて表します。 zk−1−zk=ak−20 より、zk=zk−1−(ak−20) したがって、
z2=z1−(a2−20)=z1−(15−20)=z1+5 z3=z2−(a3−20)=z1+5−(17−20)=z1+5+3=z1+8 z4=z3−(a4−20)=z1+8−(13−20)=z1+8+7=z1+15 z5=z4−(a5−20)=z1+15−(28−20)=z1+15−8=z1+7 z6=z5−(a6−20)=z1+7−(14−20)=z1+7+6=z1+13 z7=z6−(a7−20)=z1+13−(29−20)=z1+13−9=z1+4 (2) 操作回数の最小値を求める
全体の操作回数は ∑k=17∣xk∣+∣yk∣ となりますが、これは ∑k=17∣zk∣ ではありません。 ∑k=17zk=0 でなければなりません。 ∑k=17zk=z1+(z1+5)+(z1+8)+(z1+15)+(z1+7)+(z1+13)+(z1+4)=7z1+52=0 よって、z1=−752 z1は整数でなければならないので、上記の計算は誤りです。 ∑k=17(ak−20)=0 であることを利用して、∑k=17(zk−1−zk)=∑k=17(ak−20)=0 z0=z7 なので、∑k=17(zk−1−zk)=0 は常に成立します。 最小操作回数を求めるには、各頂点のブロックを20個にするために必要な移動回数を考えます。これは ∣ak−20∣ の総和にはなりません。例えば、a1=24からa2=15へ4個移動させる場合、逆に戻すことがないならば、∣z1∣=4 です。 全体の移動回数は少なくとも ∑k=17∣ak−20∣/2 以上になります。 ∑k=17∣ak−20∣=∣24−20∣+∣15−20∣+∣17−20∣+∣13−20∣+∣28−20∣+∣14−20∣+∣29−20∣=4+5+3+7+8+6+9=42 したがって、移動回数は少なくとも 42/2=21 回必要です。 ## 最終的な答え
(1)
z2=z1+5 z3=z1+8 z4=z1+15 z5=z1+7 z6=z1+13 z7=z1+4 (2) 21