首页 > 代码库 > HDU 4386
HDU 4386
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=1;cas<=T;cas++){ int a[4]; for(int i=0;i<4;i++) scanf("%d",&a[i]); sort(a,a+4); printf("Case %d: ",cas); if(a[3]<(a[0]+a[1]+a[2])){ double p=(a[0]+a[1]+a[2]+a[3])/2.0; printf("%.6lf\n",sqrt((p-a[0])*(p-a[1])*(p-a[2])*(p-a[3]))); } else puts("-1"); } return 0;}
HDU 4386
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。