标签:scan art title pid ora instead oss min ima
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4386
2 1 1 1 1 1 2 3 4
Case 1: 1.000000 Case 2: 4.898979
题意:
给出四条边的长度,求是否能形成四边形。假设能形成求最大面积。
PS:
四边形最大面积:
L = (A+B+C+D)/2;
AREA = sqrt((L-A) * (L-B)*(L-C)*(L-D));
代码例如以下:
#include <cstdio> #include <cmath> #include <algorithm> using namespace std; int main() { int t; int cas = 0; scanf("%d",&t); while(t--) { int a[4]; for(int i = 0; i < 4; i++) { scanf("%d",&a[i]); } sort(a,a+4); int sum = a[0]+a[1]+a[2]; if(sum <= a[3]) { printf("Case %d: -1\n",++cas); continue; } double p = (a[0]+a[1]+a[2]+a[3])/2.0; double area = sqrt((p-a[0])*(p-a[1])*(p-a[2])*(p-a[3])); printf("Case %d: %.6lf\n",++cas,area); } return 0; }
标签:scan art title pid ora instead oss min ima
原文地址:http://www.cnblogs.com/jzssuanfa/p/6897708.html