hihocoder王胖浩与三角形【海伦公式+分类讨论】
-
描述
王胖浩有一个三角形,三边长为a,b,c。他有特殊的能力,能增加三条边的边长,增加的总长度不能超过l。
他想通过合理地使用他的特殊能力,使得三角形的面积最大。
输入
第一行一个整数T,表示测试数据个数。
以下T行,每行一个四个整数a,b,c,l。
数据范围:
1<=T<=104, 1<=a,b,c<=106, 0<=l<=106
输出
输出T行,每行一个实数,表示三角形的面积。要求相对误差不能超过10-9。
样例输入
-
1 2 3 3 3
- 样例输出
-
5.8216152143
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<algorithm>
#include<cmath>
using namespace std;
double num[3];
bool cmp(double a,double b){return a<b;
}
int main()
{int t,i,j,k;double l;scanf("%d",&t);while(t--){scanf("%lf%lf%lf%lf",&num[0],&num[1],&num[2],&l);sort(num,num+3,cmp);if(num[1]-num[0]>=l){num[0]+=l;}else if(num[2]-num[1]+num[2]-num[0]>=l){num[0]=num[1]=(num[0]+num[1]+l)/2.0;}else {num[0]=num[1]=num[2]=(num[0]+num[1]+num[2]+l)/3.0;}double p=(num[0]+num[1]+num[2])/2.0;printf("%.10f\n",sqrt(p*(p-num[0])*(p-num[1])*(p-num[2])));}return 0;
}
hihocoder王胖浩与三角形【海伦公式+分类讨论】相关推荐
- hihoCoder挑战赛16 王胖浩与三角形
题目1 : 王胖浩与三角形 时间限制:1000ms 单点时限:1000ms 内存限制:256MB 描述 王胖浩有一个三角形,三边长为a,b,c.他有特殊的能力,能增加三条边的边长,增加的总长度不能超过 ...
- HihoCoder 1245:王胖浩与三角形 三角形边长与面积
#1245 : 王胖浩与三角形 时间限制:1000ms 单点时限:1000ms 内存限制:256MB 描述 王胖浩有一个三角形,三边长为a,b,c.他有特殊的能力,能增加三条边的边长,增加的总长度不能 ...
- HIHO#1245 : 王胖浩与三角形
<span style="color: inherit; line-height: 1.1; font-family: 'Helvetica Neue', Helvetica, Ari ...
- hihocoder1245 王胖浩与三角形
#1245 : 王胖浩与三角形 时间限制:1000ms 单点时限:1000ms 内存限制:256MB 描述 王胖浩有一个三角形,三边长为a,b,c.他有特殊的能力,能增加三条边的边长,增加的总长度不能 ...
- hihoCoder挑战赛16 A—— 王胖浩与三角形
思路:开始没有思路,想到了用三边乱搞(每条边按照比例增加)然而样例都无法通过.后来想到了海伦公式sqrt((a+b+c)(a+b-c)(b+c-a)(a+c-b))/4,那么这样以来就是让这个三角形趋 ...
- hiho 挑战赛16 A.王胖浩与三角形
水题 题意: 给你三角形的三条边,再给你一个长度L.你要增加三条边的长度,总的增加量是L,使得变大的三角形面积最大 数据范围: 边长<=10^6,L<=10^6 思路: 显然这种题感觉就是 ...
- HihoCoder 1246:王胖浩与环
#1246 : 王胖浩与环 时间限制:6000ms 单点时限:1000ms 内存限制:256MB 描述 王胖浩有一个环,环上有n个正整数.他有特殊的能力,能将环切成k段,每段包含一个或者多个数字. 对 ...
- hihoCoder #1246 王胖浩与环
题目大意 $n$($1\le n\le 2000$)个正整数 $a_1, a_2, \dots, a_n$($a_i\le 5\times 10^7$)分布在一个圆环上. 定义 $b_k$ 为:将环上 ...
- hihocoder 1246 王胖浩与环
题意: 给出一个环,环上有n(<=2000)个数字(<=5e7),然后将这个环分成1~n个连续序列,各个序列和之间的最大公因数. 题解: 我一开始想到的是二分,然后对于二分就会想怎么che ...
最新文章
- overflow超出显示_[CSS]text-overflow: ellipsis;什么时候可能不生效?
- 远程办公,团队如何高效沟通与协作
- 去掉Word2007中的软回车(从网页粘贴文字的一些编辑)
- 指针在c语言中的运用,怎么理解C语言中的指针,如何运用?
- RabbitMQ入门学习系列(二),单生产者消费者
- python canny函数_python库skimage 应用canny边缘探测算法
- docker 容器命令
- Uva 1630 折叠串
- 【转】Linux内存管理(最透彻的一篇)
- vmware挂载共享目录
- 終級方案之封USB設備必殺技
- 阿里王坚:万物互联网=云计算+大数据
- web服务器性能瓶颈,Web服务器性能瓶颈因素
- RTF转HTML(<div>标签)格式的方法(java)
- thinkpadt410接口介绍_联想t410配置参数详解
- vue3 ts版本深度拷贝功能推荐ts-deepmerge
- 操作系统教程(第6版) 预习笔记
- 案例:三个和尚(升级版)
- vue实现物流时间轴效果
- N2N组建虚拟局域网