用兩次餘弦定理就可以解出答案了
DA = DB = DC = a
→ 三角形ABD是等腰三角形
→ 角ABD和角BAD相等
AB和CD平行
→ 角ABD和角BDC相等
設:
AC = x
角ABD = 角BAD = 角BDC = θ
角ADB = 180 - 2θ
角ADC = 108 - θ
先對三角形BDC用一次餘弦定理:
→ cosθ = (2*a^2 - b^2)/(2*a^2)
再對三角形ADC用一次餘弦定理:
→ cos(108度-θ) = - cosθ = (2*a^2 - x^2)/(2*a^2)
解出x^2 = 4*a^2 - b^2
接下來再努力化簡吧,加油~~
我的策略是先算出平方,給個變數square = abs(4*a*a - b*b)
。
預計化簡成m√n的形式,
如果square有辦法化簡,m不可能大於square
的平方根,
所以我從maxi_root=int(square**0.5)+1
開始往下找,for i in range(maxi_root,1,-1)
,然後if square%(i*i)==0
,則break
。
最後答案有三種型式:m
、m√n
、√square
,記得要區分好,小心會跑出4√1
這種結果。