スパイロラテラル

スパイロラテラル


◆大阪府の中学校1年生 天気予報 さんからのコメント。

数字が三個の場合(a,b,c)

右 a+b+c
下 b+c+a
左 c+a+b
上 a+b+c

となるので4ターンで元に戻ってくる。

数字が四個の場合(a,b,c,d)

右 a+a+a+・・・・・・・+a
下 b+b+b+・・・・・・・+b
左 c+c+c+・・・・・・・+c
上 d+d+d+・・・・・・・+d

となるので右と左 上と下が同じ数字のとき元に戻ってくる
(1ターンで)

数字をx個書いたとすると
4とxの最小公倍数をxで割ったターンで戻ってくる。


◆東京都 白拓 さんからの解答。

入力した数をx個とすると、x個で一周期目に一周期分移動したときのベクトルを
(r*cos(s),r*sin(s))とする。(rは長さ,sは角度)

一回で-90度変化するため2周期目のベクトルの角度は
s+[x]mod[4]*(-90)度 になる。

[x]mod[4]=1 のとき一周期で(-90)度ずれる。
4
Σ
n=1
(r*cos(s-90°*n),r*sin(s-90°*n))=0

となり4周期分で元の座標に戻る。

[x]mod[4]=3 のとき一周期で(90)度ずれる。
このときも[x]mod[4]=1 のときと同様。

[x]mod[4]=2 のとき一周期で(180)度ずれる。
2
Σ
n=1
(r*cos(s-90°*n),r*sin(s-90°*n))=0

となり2周期分で元の座標に戻る。

[x]mod[4]=0 のとき一周期で(0)度ずれる。
一周期目と同じ角度のベクトルのため初期位置には戻らない。


◆埼玉県 mist さんからの解答。

複素平面上で考える。
虚数単位をiとする。
赤の点を複素数の点zとする。
まず始めに点zは原点z=0にいたとする。

右(+1方向)にa動くと、z=a
下(-i方向)にb動くと、z=a-bi
左(-1方向)にc動くと、z=a-bi-c
上(+i方向)にa動くと、z=a-bi-c+ai
右(+1方向)にb動くと、z=a-bi-c+ai+b
・・・・・・・

と繰り返すと、12回目(4周期)で

z=a+b(-i)+c(-i)2+a(-i)3+b(-i)4+c(-i)5+a(-i)6+b(-i)7+c(-i)8+a(-i)9+b(-i)10+c(-i)11
 =a{1+(-i)3+(-i)6+(-i)9} +b{(-i)+(-i)4+(-i)7+(-i)10} +c{(-i)2+(-i)5+(-i)8+(-i)11}
 =0
{ }の中が公比(-i)3=iの等比数列の和になっているから、4周期操作を繰り返すと、ちょうど{ }の中が打ち消しあって0になる。
したがって、a,b,cがどんな値でも4周期の操作で、原点に戻る。

a,b,c,dと4つの数字の場合は、公比が(-i)4=1になって、a,b,c,dが特別な値でない限り、もとの出発点に戻らない。


 スパイロラテラルへもどる

 数学の部屋へもどる