2018 Benelux Algorithm Programming Contest (BAPC 18) J-Janitor Troubles(计算几何公式)

思路来源

https://www.cnblogs.com/elpsycongroo/p/6777584.html

题意

给四条边边长,保证一定可以构成一个四边形。

问其构成最大的四边形的面积。

题解

Bretschneide公式:证明一定是圆内接四边形

婆罗摩笈多公式(海伦公式的扩展):求圆内接四边形面积

心得

当记结论了吧。

其实博客来源挺好的,自己要照那么强推应该也能推出来。

可惜不是高中了哈GG,感觉自己学acm太死板,可又找不到太好的方法。

感觉计算几何鬼公式还是挺多的。

无差别补题。要铭记fls的话啊。

代码

#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cstdlib>
#include<cmath>
using namespace std;
typedef long long ll;
double a[10];
int main(){
    ll t;
    ll i;
    scanf("%lf%lf%lf%lf",a,a+1,a+2,a+3);
    sort(a,a+4);
    double p=(a[1]+a[2]+a[3]+a[0])/2;
    double s=sqrt((p-a[0])*(p-a[1])*(p-a[2])*(p-a[3]));
    printf("%.6lf\n",s);
} 

猜你喜欢

转载自blog.csdn.net/Code92007/article/details/84586480