ネットにミクトモがあげた問題。
(x+y+z)(1/x+1/y+1/z)=n
x, y, z, n∈N
なかなか骨のある問題です。
導入として、
(x+y+z)(1/x+1/y+1/z)=9 ...(1)
(x+y+z)(1/x+1/y+1/z)=10 ...(2)
(x+y+z)(1/x+1/y+1/z)=11 ...(3)
の場合を解くようになっている。
数学かプログラミングで解くのだが、まずは数学として考えられるところまでやってみる。
まず、xとyとzは可換なため、何らかの条件を付けて、余計な計算を省きたい。
x≦y≦z としても、一般性は失われない。
以下、x≦y≦z で考える。
(x+y+z)∈N
(1/x+1/y+1/z)∈Q
これは間違いようのない事実である。
(1/x+1/y+1/z)∈N
とすると、(x, y, z)の取り得る値は限られてくる。
(x, y, z)=(3, 3, 3) のとき、(1/x+1/y+1/z)=1
(x, y, z)=(1, 2, 2) のとき、(1/x+1/y+1/z)=2
(x, y, z)=(1, 1, 1) のとき、(1/x+1/y+1/z)=3
の3通りです。
残りは、有理数ということで、nが自然数なので、
(1/x+1/y+1/z)=p/q
とおくと、
(x+y+z)はqの倍数である必要がある。
続いて、式変形を考えると、
(1/x+1/y+1/z)=(xy+xz+yz)/(xyz)
のように変形できる。
つまり、
n=(x+y+z)(xy+xz+yz)/(xyz)
にもなる。
x, y, zの法を取ると、
(y+z)yz≡0 (mod x)
(x+z)xz≡0 (mod y)
(x+y)xy≡0 (mod z)
といった式にもなる。
あとは、
y/x+z/x+x/y+z/y+x/z+y/z+3=n
とかかな。
さて、あと数学的にやれることはなんだろうか。
導入問題を解いてみる。
(1)は、x=y=z
(2)は、z=2x、y=x、または、z=2x、y=z
(3)は、z=6x、y=2x、または、z=6x、y=3x
と解けた。
例えば、
n=14のとき、(x, y, z)={ (2, 3, 10), (3, 10, 15) }
と見つかる。
前者は、y=(3/2)x、z=5x
後者は、y=(10/3)x、z=5x
例えば、
n=18のとき、(x, y, z)={ (2, 3, 15), (2, 10, 15) }
と見つかる。
前者は、y=(3/2)x、z=(15/2)x
後者は、y=5x、z=(15/2)x
どうやら、n>9において、xとzの比は1つで、xとyの比は2つは存在しそうである。
そこで、(x1,y1,z1)、(x2,y2,z2)、として、y1≦y2とすると、
x1:z1=x2:z2
という比率が一定であるから、
内項の積と外項の積は等しいことより、
x1・z2=x2・z1
が言え、n=9、10、11、14、16とやってみたところ、
y1・y2=x1・z2=x2・z1
という関係式が成り立ちそうだ。
さて、どんな風にプログラムを作ろうか。
ではでは