http://acm.hdu.edu.cn/showproblem.php?pid=4386
题意:给四条边长,问能否组成四边形,如果能,求最大面积
求最大面积用海伦公式的四边形推广,p=(a+b+c+d)/2,S=sqrt((p-a)*(p-b)*(p-c)*(p-d))
#include <iostream>
#include <cstdio>
#include <cstring>
#include <map>
#include <algorithm>
#include <queue>
#include <cmath>
#include <stack>
#include <set> using namespace std; int main(){
int T;
scanf("%d",&T);
for(int cas=;cas<=T;cas++){
int a[];
for(int i=;i<;i++)
scanf("%d",&a[i]);
sort(a,a+);
printf("Case %d: ",cas);
if(a[]<(a[]+a[]+a[])){
double p=(a[]+a[]+a[]+a[])/2.0;
printf("%.6lf\n",sqrt((p-a[])*(p-a[])*(p-a[])*(p-a[])));
}
else puts("-1");
}
return ;
}