[BZOJ]1069: [SCOI2007]最大土地面积 计算几何
2014-01-03 10:29
246 查看
Description
在某块平面土地上有N个点,你可以选择其中的任意四个点,将这片土地围起来,当然,你希望这四个点围成的多边形面积最大。Input
第1行一个正整数N,接下来N行,每行2个数x,y,表示该点的横坐标和纵坐标。Output
最大的多边形面积,答案精确到小数点后3位。Sample Input
50 0
1 0
1 1
0 1
0.5 0.5
Sample Output
1.000HINT
数据范围 n<=2000, |x|,|y|<=100000记得前几天ZGS就喊看计算几何,可惜一直浪,没看,昨天考着了,不过数据卡的不紧,YY了个n^2logn都过了,感觉凸包和斜率优化基本一样,会斜率优化就能写出来。
对于这道题,肯定这四个点再凸包上,然后我们枚举四边形的对角线,将四边形面积拆成两个三角形面积。我们发现,因为剩下的两个点都在凸包上,所以如果我们由左到右顺序枚举每个点,那构成的三角形面积的图像一定是一个单峰函数,然后果断三分,考场上卡到一秒过,不过下来测是0.8左右,估计评测机太渣了。
然后这里有一个很有用的优化。我们发现,在枚举对角线时,三角形另一个点的最优位置一定也是递增的,所以时间复杂度可以优化到n^2,似乎这个名字叫旋转卡壳。。。
我的代码太丑了,就不贴了^_^
相关文章推荐
- [BZOJ1069][SCOI2007]最大土地面积(计算几何-旋转卡壳-最远点对)
- BZOJ 1069 [SCOI2007]最大土地面积 ——计算几何
- 【BZOJ1069】【SCOI2007】最大土地面积 计算几何 凸包
- BZOJ-1069 [SCOI2007]最大土地面积
- 【BZOJ1069】[SCOI2007]最大土地面积【凸包】
- bzoj1069: [SCOI2007]最大土地面积
- [bzoj1069][SCOI2007]最大土地面积
- 【bzoj1069】[SCOI2007]最大土地面积 凸包+旋转卡壳
- 1069: [SCOI2007]最大土地面积 - BZOJ
- BZOJ1069: [SCOI2007]最大土地面积
- bzoj1069【SCOI2007】最大土地面积
- BZOJ 1069 [SCOI2007]最大土地面积 旋转卡壳
- 【bzoj_1069】[SCOI2007]最大土地面积
- BZOJ 1069: [SCOI2007]最大土地面积 [旋转卡壳]
- [BZOJ]1069 [SCOI2007] 最大土地面积 凸包 + 旋转卡壳
- bzoj1069 [SCOI2007]最大土地面积(凸包+旋转卡壳)
- bzoj 1069: [SCOI2007]最大土地面积 (旋转卡壳)
- 【BZOJ】【1069】【SCOI2007】最大土地面积
- BZOJ 1069 SCOI 2007 最大土地面积 凸包+旋转卡壳
- [BZOJ1069][SCOI2007][凸包][旋转卡壳]最大土地面积