UVa 10522 - Height to Area
链接
题意
给出三角形的三条高的长度,求三角形的面积。
思路
设三角形的三边为\(a\)、\(b\)、\(c\),对应的高分别为\(h_a\)、\(h_b\)、\(h_c\),三角形的面积为\(s\)。
显然
\[a = \frac{2s}{h_a}, \space b = \frac{2s}{h_b}, \space c = \frac{2s}{h_c}\]
又因为
\[s = \sqrt{p \left( p - a \right) \left( p - b \right) \left( p - c \right)}\] \[p = \frac{1}{2} \left(a + b + c\right) = s\left(\frac{1}{h_a} + \frac{1}{h_b} + \frac{1}{h_c} \right)\]
化简得
\[s = \frac{1}{\sqrt{\left( \frac{1}{h_a} + \frac{1}{h_b} + \frac{1}{h_c} \right) \left( -\frac{1}{h_a} + \frac{1}{h_b} + \frac{1}{h_c} \right) \left( \frac{1}{h_a} - \frac{1}{h_b} + \frac{1}{h_c} \right) \left( \frac{1}{h_a} + \frac{1}{h_b} - \frac{1}{h_c} \right)}}\]
代码
1 |
|
相关文章