hihocoder1245 王胖浩与三角形
来源:互联网 发布:vscode搭建rails 编辑:程序博客网 时间:2024/06/13 06:24
#1245 : 王胖浩与三角形
时间限制:1000ms单点时限:1000ms内存限制:256MB- 样例输入
12 3 3 3
- 样例输出
5.8216152143
描述
王胖浩有一个三角形,三边长为a,b,c。他有特殊的能力,能增加三条边的边长,增加的总长度不能超过l。
他想通过合理地使用他的特殊能力,使得三角形的面积最大。
输入
第一行一个整数T,表示测试数据个数。
以下T行,每行一个四个整数a,b,c,l。
数据范围:
1<=T<=104, 1<=a,b,c<=106, 0<=l<=106
输出
输出T行,每行一个实数,表示三角形的面积。要求相对误差不能超过10-9。
三角形周长一定,边长越接近面积越大。
代码:
#include <iostream>#include <cmath>#include <algorithm>#include <iomanip>using namespace std;int T;double area(double a,double b,double c){ double p = 0.5*(a+b+c); return sqrt(p*(p-a)*(p-b)*(p-c));}int main(){ cin >> T; double a[T][3],l[T]; for(int i=0; i<T; i++){ cin >> a[i][0] >> a[i][1] >> a[i][2] >> l[i]; } for(int i=0; i<T; i++){ sort(a[i],a[i]+3); if(a[i][1]-a[i][0]<=l[i]){ l[i] -= a[i][1]-a[i][0]; a[i][0] = a[i][1]; if(a[i][2]-a[i][1]<=l[i]/2){ l[i] -= 2*(a[i][2]-a[i][1]); a[i][0] = a[i][2]+l[i]/3; a[i][1] = a[i][2]+l[i]/3; a[i][2] = a[i][2]+l[i]/3; } else{ a[i][0] += l[i]/2; a[i][1] += l[i]/2; } } else a[i][0] += l[i]; cout << fixed << setprecision(10) << area(a[i][0],a[i][1],a[i][2])<<endl; } return 0;}
0 0
- hihocoder1245 王胖浩与三角形
- HihoCoder 1245:王胖浩与三角形 三角形边长与面积
- HIHO#1245 : 王胖浩与三角形
- hihoCoder挑战赛16 王胖浩与三角形
- hiho 挑战赛16 A.王胖浩与三角形
- 三角形与立方体相交
- 直线与三角形相交
- 三角形周长与面积
- 类与三角形2
- 三角形内切圆与外接圆
- 三角形与矩形打印
- ##圆与三角形交##
- 三角形外接圆与内切圆
- qudoj LC与三角形
- 三角形与射线相交
- 三角形与星号
- hihocoder王胖浩与三角形【海伦公式+分类讨论】
- hihoCoder挑战赛16 A—— 王胖浩与三角形
- puorG-knisedoNesreveR.25
- 用选择排序法对数组进行排序
- Android Shape
- android 获取手机号
- 扩展ViewFlipper做导航页(一)
- hihocoder1245 王胖浩与三角形
- flex 获取屏幕分辨率
- IO流2(字符流缓冲区、字节流、装饰设计模式、转换流)
- Java for Web学习笔记(十四):JSP(4)JSP Tag
- android事件传递
- vlfeat重编译以及visual studio与matlab联调
- LeetCode 328. Odd Even Linked List Java
- MyEclipse使用总结——在MyEclipse中设置jsp页面为默认utf-8编码
- JAVA多线程实现的三种方式