首页 技术 正文
技术 2022年11月20日
0 收藏 397 点赞 2,140 浏览 923 个字

Triangle

Time Limit: 1000msMemory Limit: 65536KB

64-bit integer IO format: %lld      Java class name: Main

Special JudgeSubmit Status PID: 27932

BNU27932——Triangle——————【数学计算面积】

如图的三角形,三边边长分别为AB=a,BC=b,CA=c,并且AA’/AB=p1,BB’/BC=p2,CC’/CA=p3;

现在对于给定的a,b,c和p1,p2,p3,请你计算图中红黄绿三部分的面积。

 

Input

第一行为一个T 表示测试数据组数 (T<=1000)

接下来的T行

每行先是3个整数 依次为 a b c  0<a,b,c<=10000  保证构成三角形

然后是3个两位小数 依次为p1 p2 p3  0.00<p1,p2,p3<0.50

 

Output

对于每组数据 输出一行 分别为红色 黄色 绿色部分的面积

中间用空格隔开 行末没有空格

答案误差在0.0001内即可

 

Sample Input

2
4 4 4 0.25 0.25 0.25
10 15 20 0.2 0.3 0.4

Sample Output

2.13175484 0.39970403 4.39674436
14.68004304 7.41819926 50.52019544官方题解:

H. Triangle

这是一道不太常见的几何题,因为需要添加辅助线才能简化推导过程,当然用正弦定理和余弦定理来回倒角和边也是可以的(此题对精度的要求不高,而且是Special Judge),不过会很麻烦的 = =||

辅助线的构造方法:作B’D∥A’C并设BD=x,x可由△AA’O∽△ADB’以及△BB’D∽△BCA’推出,这样AD的长度也是可求的!下面第一个图中的黄色部分的面积就可利用相似比的平方求出,i.e. 对于△ADB’的面积,它的高与△ABC的高也存在相似比关系,这样就可以推导出△AA’O的面积,原图中其他两块黄色部分的面积可利用类似的方法求出,黄色面积的和即为S(黄)

对于绿色部分的面积,S’(绿)=△ABB’—(两块黄色的面积),这里△ABB’与,△ADB’等高的,只是底不同而已~~~。类似地可以求得三块绿色面积的总和

最后红色部分的面积S(红)=S(总)—S(绿)—S(黄)

总的面积可以用海伦公式求解

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:8,994
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,507
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,350
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,135
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,768
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,845