平成17年10月23日

[流れ星]

     第161回数学的な応募問題解答NO1

      <解答募集期間:9月25日〜10月23日

[宝さがし]

皆さん、今回の応募期間は1ヶ月とします。ここで問題です。

 AB=ACの二等辺三角形ABCの土地があります。太郎さんはAP+BP+CPの長さが最小になる点Pに宝物を埋めました。

宝物が埋まっている点Pがどこか考えてください。ただし、頂角∠BACは120°以内とします。

NO1「uchinyan」9/25 17時07分受信 更新10/23

161回数学的な応募問題への解答

△ABC に対して、∠APB = ∠BPC = ∠CPA = 120度、となる点 P が答え。
証明は、例えば、△APB を B を中心に60度回転して、
A, P の移動先を D, Q とします。
△DAB は正三角形で、D は、△ABC が決定すれば決定する固定された点です。
また、∠ABC < 120度なので、D は、BC 及びその延長に関して、
A と同じ側にあります。
回転の性質から、△APB ≡ △DQB なので、AP = DQ、
△BPQ は正三角形より、BP = BQ = QP。
つまり、AP + BP + CP = DQ + QP + PC となり、
D と C とを結ぶ直線が最小です。
逆に最小のとき、点 Q, P を DC 上に、△APB ≡ △DQB となるようにとれば、
∠DBA = 60度なので、△BPQ が正三角形になり、∠APB = ∠DQB = 120度、
∠BPC = 120度。
そこで、さらに、∠CPA = 120度。

(感想)
第161回数学的な応募問題ですが、シュタイナー点又はフェルマー点、というものですね。
以前に解いたことがあったので、ひとます、その解答を送りました。

NO2「H7K」     9/25 22時46分受信 更新10/23
AP+BP+CP最小」から,即座にFermat点を思い出しました.
が,肝心のその内容は忘れてしまい,思い出すのにかなり時間がかかりました.
一般の場合を先に考えます.

Aを中心に,C, Pを60°回転させ,それをC', P'とします.
このとき,Pの取り方より,AP=AP',∠PAP'=60°より,AP=PP'.
一方,回転なのだから,当然CP=C'P'.よって,PA+PB+PC=BP+PP'+P'C>=BC'.
よって,この式の等号が成り立つような,即ち∠APB=∠BPC=∠CPA=120°
であるようなPがあれば,それが求める点となる.

∠A, ∠B, ∠C<120°のときをまず考える.
このとき,上に書いた条件を満たすPは存在し,以下の取り方で作図できる:
AB, BC, CAを一辺とする正三角形ABC', BCA', CAB'を,元の三角形の外側にそれぞれ作る.
すると,AA', BB', CC'は一点で交わり,これが求める点.
(証明はなんだかごっちゃになってしまったので後で)

一方,どれか1つの角が120°より大きい場合,その角が∠Aであるとすると,
「AP+BP+CP最小」の点はP=Aである.このとき,和はAB+ACとなる.
[証明]
1. PB+PC=AB+ACの点の集合は楕円となる.楕円外部では,PA+PB+PC>PB+PC>AB+AC.
2. 楕円上では,P=Aでないなら,PA>0より,PA+PB+PC>PB+PC=AB+AC.
3. 三角形の周上.P∈BCでないときは,三角形の形状から,P=Aが最短.
(P∈BCのときは,後の7.で考える.)
4. 楕円内の下半分については,当然上半分の対応する点に比べPAが長いはず.
5. 楕円とABで囲まれる領域内の場合.まず,明らかにPA+PB>AB.また,三角形の
形状から,この領域と,QA<=ACの集合(閉円板)とは共通部分がない.
(円周のAにおける接線を引いて考えれば良い)よってPC>AC.
6. 楕円とACで囲まれる領域内の場合.5.と全く同様.
7. 三角形の内部,もしくはBC上.
∠A, ∠B, ∠C<120°のときと同様に作図してみる.しかし,Pの位置の制限から,
B--P--P'--C'は,半直線AB, AC'により区切られる半平面のうちCがある方,の上を
通っていることとなる.このため,どうあがいても,P=Aのときより短くすることはできない.
以上より,求める点は,P=A.//

この問題の場合,明らかに∠A, ∠B, ∠C<120°のときである.二等辺三角形の対称性も使うと,
まずAからBCに向かって垂線を引き,次に△ABCの外側に正三角形CB'Aを作る.
AB'と垂線の交点が求めるPである

H7K」     9/26 21時39分受信 更新10/23

NO3「ドンキー」9/26 21時52分受信 更新10/23
「解答」

まず、題意を満たす点Pは線分BCの垂直二等分線上にあることを示しましょう。

△ABCの内部にあり、線分BCの垂直二等分線上にある定点Qに対して、点B、Cを焦点とし、点Qを通るような楕円をとります。

その楕円上で点Pを動かすとき BP+CP=BQ+CQ=一定 ですね。

そして明らかにAP≧AQです。

よって AP+BP+CP≧AQ+BQ+CQ が成り立ちます。

等号成立は点Pと点Qが一致するときです。

これは、点Qが線分BCの垂直二等分線上にあれば、どう動かしても常に成り立ちますね。

これで題意を満たす点Pは線分BCの垂直二等分線上にあることが分かりました。

 

ここまで来ればもう一息です。

線分BCの中点をMとし、線分AM上に点Pをとります。

またPM=pとおくと、点Pは△ABCの内部にありますから 0<p<AM ・・・@ です。

ここで、頂角が120°以下であるという条件から∠ABM≧30°だと分かります。

よって、AM≧BMtan30°=BM/sqrt(3) ・・・A です。

このとき BP+CP=2BP=2sqrt(PM^2+BM^2)=2sqrt(p^2+BM^2) ですから

AP+BP+CP=AM-p+2sqrt(p^2+BM^2)

この両辺をpで微分すると

d(AP+BP+CP)/dp=-1+2p/sqrt(p^2+BM^2)  ・・・(*)

ここで (*)=0  ⇔  p^2+BM^2=4p^2

                        ⇔  p=BM/sqrt(3)

また、この前後で(*)は負から正に変わります。

よってAP+BP+CPは、p=BM/sqrt(3) のとき極小かつ最小になります。

@Aより、このとき点Pはしっかり△ABCの内部にあります。

 

以上より、宝物が埋まっているのは線分BCの垂直二等分線上で、∠PBC=30°のを満たす点Pの位置にあります。 

 

(感想)図ないので分かりにくいかもしれませんが、ご勘弁を。

    それにしても、どうもこの解き方では面白くないですね。

    もっと幾何的に解けると思うんですけど、それは他の方々の解答を楽しみにしておきます。

 「ドンキー」9/27 14時05分受信 更新10/23
今年パソコンを買ったんですけど、いろいろネットをさまよっていると「Weekend Mathmatics」にたどり着きました。そこでこの問題のことを知り、送らせてもらいました。

数学は好きです。知らないことがたくさんあり、その奥の深さにワクワクします。また(分かればの話ですが)、これからも解答を送りたいと思います。

 

一般の三角形についても考えてくださいということでしたので、考えてみました。

まずは、二等辺三角形についてはもう答が出ているので、それを足がかりにしたいと思います。

 

僕は答に「線分BCの栖直二等分線上にあり、∠PBC=30°である点P」と描きましたが、

これではあまりに二等辺三角形に頼りすぎた答で、一般化できそうにありません。

しかしこれを「∠APB=∠BPC=∠CPA=120°」と読み替えれば、活路が見出せます。

今までの経験上、図形に関する最大最小の問題はこうしたきれいな条件のときに実現したからです。

これが答では?と直感します。

 

しかしこれでは何の証明にもなっていません。ここからが本番。

120°という角度は、180°−60°です。

60°といえば正三角形が浮かびます。

うまく正三角形を作れないだろうか?と考えます。

 

辺BCに関して点Aと反対側に、△CBB’が正三角形になるような点B’をとり、

同じ側に、△CPP’が正三角形となるような点P’をとります。

すると、△CPBと△CP’B’が合同になりますね。(二辺と挟角)

よって  AP+BP+CP=AP+B’P’+PP’ になります。

折れ線APP’Bの長さは、それが直線になったとき最小になるので、

AP+BP+CP=AP+PP’+P’B’≧AB’

等号は4点A,P,P’,B’が一直線上にあるとき、

すなわち ∠CPA=180°−∠CPP’=180°−60°=120° かつ ∠BPC=∠B’P’C=180°−∠CP’P=180°-60°=120° 

のときです。これで最初の直感が正しかったことが示されました。

 

今回も図がありません。描き方が分からないんです。勉強します・・・

 

(感想)

最初に161を解いたときから、二等辺三角形じゃなくても点Pは求まるんだろうな〜とは思ったんですが、

いい方法が浮かばずに座標で解き、その結果二等辺三角形という図形の性質をフルに活用して解答することになりました。

ただそれは無駄ではなく、答を先に知るきっかけになってくれました。

一般化を考えるときに特殊な例を足がかりにするといのはよくあることで、今回もその例ですね。

上の解答を考えるのは、結果をある程度見通してないと難しいですから。

僕はこの手の図形問題は苦手なので、なおさら161を考えたことが大きかったです。

 

ところで、これを四面体に拡張するとどうなるんでしょうか?

つまり、四面体ABCDの内部に点Pをとるとき、AP+BP+CP+DPが最小になるような点Pはどんな場所か、という問題です。

正四面体のときは、おそらく重心がその点にあたるでしょうから、計算して見ると点Pは

∠APB=∠BPC=∠CPD=∠DPA=θ  ただし cosθ=-1/3

を満たす点だということがわかります。

これが一般の場合に成り立つ、と期待しますが、僕にはちょっと示せそうにありません。

またどなたかが考えてくれていることを祈ります。

 

162も楽しみにしています。

NO4「kashiwagi」9/28 7時28分受信 更新10/23
kashiwagi」9/28 20時26分受信 更新10/23

 今、二等辺三角形ABCの内部に点Pをとる。この点を通る直線BCに平行する線DEを引く。そこで線分BPと線分CPの和は点Cの線DEに対する対称点C‘とBを結ぶ直線となる。ところで、この直線BC’は二等辺三角形の性質から直線DEの中点Oを通る。又、線分APの最小値は直線であるのでAOとなる。即ち点Pが点Oとなる時AP+BP+CPの長さは最小となる。

 そこで、点Pを垂直二等分線上にとり、底辺の長さを2aとし底辺をx軸、垂直二等分線をy軸にとる。点Pの座標は(0、y)点BとCは各々(-a、0)(a、0)であるから、AP+BP+CPの長さをF(y)とすると、

  F(y)=b-y+2√a2+y2 となる。そこでこの式を微分し、ゼロとおいてyを求める。

F‘(y)=-1+2y/√a2+y2 =0 より、y=a/√3で極小値をとる。この場合この値が最小値でもある。

ところで、頂角は最大でも120°であるので a/b ≦√3である。即ちa/√3≦bとなり

必ず三角形の内部か頂点上に点Pがあることが分かる。因ってこのP点は題意を満たす。

 因って、求める点Pは垂直二等分線上の頂点Aから 2b/√3の所となる。

NO5「浜田明巳」9/29 11時17分受信 更新10/23
図形の問題なので,Visual Basicで解いた.
点B,Cを固定し,B(−1,0),C(1,0)とする.∠BAC≦120°であるから,A(0,Ax)(Ax≧1/√3)とする.
 AB=ACであるから,対称性を考慮し,点Pは∠BACの二等分線上,あるいはその直線によって分けられる領域の点Bの存在する方にあるとしても,一般性は失われない.
 問題文から,点Pは土地△ABCの周または内部にあるとは限られていないので,
  P(Px,Py),−1.5≦Px≦0,−0.5≦Py≦2.5
として,シラミつぶしでAP+BP+CPが最小となる点を見つけていく.
 このプログラムにより,点Pは∠BACの二等分線上にあり,∠BPC=120°となる事が分かる.
 ちなみに,このプログラムでは,∠BAC>120°となる場合も求めるようにしてある.この場合は点Pは点Aと一致する.

(プログラム)
Option Explicit
Sub Form_Load()
  Picture1.Scale (-1.5, 2.5)-(1.5, -0.5)
  Picture1.BackColor = vbWhite
  Picture3.BackColor = vbWhite
End Sub
Sub Command1_Click()
  Call sakuzu(1)
End Sub
Sub Command3_Click()
  Call sakuzu(2)
End Sub
Sub sakuzu(ByVal n As Integer)
  Dim Ax As Double
  Dim Ay As Double
  Dim Bx As Double
  Dim By As Double
  Dim Cx As Double
  Dim Cy As Double
  Dim Px As Double
  Dim Py As Double
  Dim Px_min As Double
  Dim Px_max As Double
  Dim Py_min As Double
  Dim Py_max As Double
  Dim Px_min0 As Double
  Dim Px_max0 As Double
  Dim Py_min0 As Double
  Dim Py_max0 As Double
  Dim Pxx As Double
  Dim Pyy As Double
  Dim AP As Double
  Dim BP As Double
  Dim CP As Double
  Dim kizami As Double
  Dim wa As Double
  Dim min As Double
  Dim dankai As Integer
  Dim dankai_max As Integer
  Randomize Timer
  Ax = 0
  If n = 1 Then
   Ay = Rnd * (2.5 - 1 / Sqr(3)) + 1 / Sqr(3) '∠BAC=120°<--> Ay=1/sqr(3)
  Else
   Ay = Rnd * 1 / Sqr(3)
  End If
  Bx = -1
  By = 0
  Cx = 1
  Cy = 0
  Px_min0 = -1.5
  Px_max0 = 0
  Py_min0 = -0.5
  Py_max0 = 2.5
  kizami = 0.02
  min = 1000000
  dankai_max = 14
  For dankai = 1 To dankai_max + 1
   If dankai = 1 Then
    Px_min = Px_min0
    Px_max = Px_max0
    Py_min = Py_min0
    Py_max = Py_max0
   ElseIf dankai <= dankai_max Then
    Px_min = max2(Pxx - kizami, Px_min0)
    Px_max = min2(Pxx + kizami, Px_max0)
    Py_min = max2(Pyy - kizami, Py_min0)
    Py_max = min2(Pyy + kizami, Py_max0)
    kizami = kizami * 0.1
   Else
    Px_min = Pxx
    Px_max = Pxx
    Py_min = Pyy
    Py_max = Pyy
   End If
   For Px = Px_min To Px_max Step kizami
    For Py = Py_min To Py_max Step kizami
     If dankai <= dankai_max Then
      AP = Sqr((Px - Ax) * (Px - Ax) + (Py - Ay) * (Py - Ay))
      BP = Sqr((Px - Bx) * (Px - Bx) + (Py - By) * (Py - By))
      CP = Sqr((Px - Cx) * (Px - Cx) + (Py - Cy) * (Py - Cy))
      wa = AP + BP + CP
      If min > wa Then
       min = wa
       Pxx = Px
       Pyy = Py
       Picture3.Cls
       Picture3.Print "AP+BP+CPの最小値/AB="; min / (Cx - Bx)
      End If
      Picture1.Cls
      Picture1.Line (Ax, Ay)-(Pxx, Pyy), vbGreen
      Picture1.Line -(Bx, By), vbGreen
      Picture1.Line (Cx, Cy)-(Pxx, Pyy), vbGreen
     Else
      Px = Pxx
      Py = Pyy
      Picture1.Cls
     End If
     Picture1.Line (Ax, Ay)-(Bx, By), vbBlack
     Picture1.Line -(Cx, Cy), vbBlack
     Picture1.Line -(Ax, Ay), vbBlack
     Picture1.Line -(Px, Py), vbBlack
     Picture1.Line -(Bx, By), vbBlack
     Picture1.Line (Cx, Cy)-(Px, Py), vbBlack
     Picture1.CurrentX = Ax
     Picture1.CurrentY = Ay
     Picture1.Print "A"
     Picture1.CurrentX = Bx
     Picture1.CurrentY = By
     Picture1.Print "B"
     Picture1.CurrentX = Cx
     Picture1.CurrentY = Cy
     Picture1.Print "C"
     Picture1.CurrentX = Px
     Picture1.CurrentY = Py
     Picture1.Print "P"
    Next Py
   Next Px
  Next dankai
  '
  If n = 1 Then
   Px = Ax
   Py = 1 / Sqr(3)
   Picture3.Cls
   Picture3.Print "∠BPC=120°"
  End If
  Picture1.Line (Ax, Ay)-(Px, Py), vbRed
  Picture1.Line -(Bx, By), vbRed
  Picture1.Line (Cx, Cy)-(Px, Py), vbRed
End Sub
Sub Command2_Click()
  Unload Me
End Sub
Private Function min2(ByVal x As Double, ByVal y As Double) As Double
  If x < y Then
   min2 = x
  Else
   min2 = y
  End If
End Function
Private Function max2(ByVal x As Double, ByVal y As Double) As Double
  If x > y Then
   max2 = x
  Else
   max2 = y
  End If
End Function

NO6「cbc」   9/30 00時17分受信 更新10/23
<コメント:
今回は二等辺三角形で容易だったのですが、一般の三角形ではどのようになるのでしょうね。>

 

No7「のっこん」10/01 15時54分受信 更新10/23

宝物はいわゆるシュタイナー点に埋まっていると思います

シュタイナー点は∠APB=∠BPC=∠CPA=120°となる点だから PはBCの垂直二等分線上の、∠BPC=120°となる点です

∠PBC=∠PCB=30°となる点といってもいいかと思います ∠BAC=120°の時はP=Aとなります

 

※二等辺三角形の時は BとCの位置が決まればAの位置に関係なくPは定まるんですね!

※シュタイナー点については 以前にuchinyanさんに証明も含めてくわしく教えていただきました

NO8「Toru」  10/05 15時59分受信 更新10/23 
第161回問題の解答を送ります。フェルマーの問題で、実は前にも見たことがありました。いろいろな解法があるようですが、実際、解答を書こうとしてみると、
120度で場合分けした時に、統一的に扱うところがどうも今一つで遅くなりました。
 
 一般のΔABCの各頂点への距離の和が最小ということにして考えます。
 
 三角形の外部の点Eについては、EA or EB or EC が辺BC,CA,ABに交わる時はEをその交点に移動させる。どれも交わらない時は、いずれかの頂点に移動させる
(たとえば∠BEC>∠BEA,∠AECなら点Aへ)ことで、より小さくできるので、除外してよい。
 
 ΔABCで∠A≧∠B,∠Cとして、この内部あるいは周上の一点Pをとる。ΔABPをAを中心に60度,時計方向に回転させてΔAB'P'となったとすると、折れ線B'P'PCはB'ACのΔABC側にあり、ΔBPP'が正三角形であることから、AP+BP+CP=B'P'+P'P+PC
 
 ∠A<120度の時、正三角形AB'Bの外接円とB'Cの交点(B'自身とは異なる方の)はΔABCの内部にあり、この点をPとすれば、円周角から∠APB'=∠ABB'=60度より、
B',P',P,Cが一直線上にならび、この時AP+BP+CP=B'P'+P'P+PC=B'Cで最小となる。
この時∠APB=∠BPC=∠CPA=120度
 
 ∠A=120度 の時、この点はAに一致する。
 
 ∠A>120度の時、B'Aを延長した点と折れ線B'P'PCの交点をQとして、折れ線のうちB'Qを直線B'Qに置き換え、次ぎに折れ線AQCを直線AC似置き換えることによっ
てAP+BP+CP=B'P'+P'P+PC≧B'A+AC=BA+AC
(Aのところにくいが打ってあって、B'〜Cへ糸を張るイメージです。)等号はP=Aの時。
  

次は「解答NO2」をご覧下さい。