#50293: 沒啥技巧,全是數學QQ (python思考流程)


abc1231334 (tl32m)

學校 : 長庚大學
編號 : 314314
來源 : [118.170.35.103]
最後登入時間 :
2025-08-19 00:53:50

用兩次餘弦定理就可以解出答案了

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

最後答案有三種型式:
mm√n√square,記得要區分好,小心會跑出4√1這種結果。