可以发现,最小的三角形一定是贴在原多边形边上的,否则原来的就不是凸多边形了。我们可以枚举大三角形作为多边形对角线的一条边,在一边用旋转卡壳维护最远点,另外一边维护最小的三角形,复杂度O(n3)O(n^3)。
注意这题既卡精度又卡常数。

#include<cstdio>
#include<cmath>
#include<algorithm>
using namespace std;
#define LL long long
const int maxn=5010;
const LL oo=1e17;
struct Vector
{LL x,y;void rd(){scanf("%lld%lld",&x,&y);}Vector operator + (const Vector &v) const{return (Vector){x+v.x,y+v.y};}Vector operator - (const Vector &v) const{return (Vector){x-v.x,y-v.y};}
}a[maxn];
typedef Vector Point;
LL dot(Vector v,Vector u)
{return v.x*u.x+v.y*u.y;
}
LL cross(Vector v,Vector u)
{return v.x*u.y-v.y*u.x;
}
LL size(int x,int y,int z)
{return abs(cross(a[x]-a[y],a[z]-a[y]));
}
int n,next[maxn],pre[maxn];
LL f[maxn];
int main()
{int i,j,x;LL mn,ans=0;scanf("%d",&n);for (i=0;i<n;i++) a[i].rd();for (int i=0;i<n;i++){pre[i]=(i-1+n)%n;next[i]=(i+1)%n;f[i]=size(i,pre[i],next[i]);}for (i=0;i<n;i++)for (j=next[next[i]],x=next[j],mn=oo;next[j]!=i;j=next[j]){mn=min(mn,f[pre[j]]);while (size(i,j,next[x])>size(i,j,x)) x=next[x];ans=max(ans,size(i,j,x)-mn);}printf("%lld",ans/2);printf("%s\n",ans%2?".5":".0");
}

bzoj4232 Kids Like Cakes相关推荐

  1. 【 CodeForces - 799A 】Carrot Cakes(模拟,细节,有坑)

    题干: In some game by Playrix it takes t minutes for an oven to bake k carrot cakes, all cakes are rea ...

  2. 找三元环(bzoj 3498: PA2009 Cakes)

    问题:给你一个无向图,问其中有多少个三元环 方法:暴力 复杂度:O(msqrt(m)) 步骤:按点的度数分成两类,分别暴力 ①统计每个点的度数 ②入度<=sqrt(m)的分为第一类,入度> ...

  3. facebook女程序员_Facebook的新“ Messenger Kids”应用程序对我的孩子安全吗?

    facebook女程序员 When it comes to online safety, "Facebook" isn't the first name any of us gen ...

  4. Time For Kids 很不错的英语学习周刊

    英语,是全世界使用范围最广的一门语言,因此,学好英语是一件很重要的事情,而它的重要和存在形式也不仅仅是在学习分数上,英语是一种语言,也是一门工具,学好它,对于我们,尤其是孩子们以后的人生都收益匪浅. ...

  5. 羊年内核堆风水: “Big Kids’ Pool”中的堆喷技术

    Chuck · 2015/01/28 10:08 0x00 前言 作者:Alex Lonescu 题目:Sheep Year Kernel Heap Fengshui: Spraying in the ...

  6. 软件开发Share the Cakes

    软件开发Share the Cakes 问题描述 : Lunar Rose is a pure and kind girl who was born in a serene town on, with ...

  7. Kids Photography: Newborns 儿童摄影教程:新生儿 Lynda课程中文字幕

    Kids Photography: Newborns 中文字幕 儿童摄影教程:新生儿 中文字幕Kids Photography: Newborns 新父母每一步都需要拍摄他们孩子的照片 - 包括他们所 ...

  8. Kids Photography: At Home 儿童摄影:家庭摄影 Lynda课程中文字幕

    Kids Photography: At Home 中文字幕 儿童摄影:家庭摄影 中文字幕Kids Photography: At Home 学习在自己的家中拍摄亲密,自然的儿童肖像的技巧 家庭摄影师 ...

  9. Proud kids最新测评:1对4的课堂效果怎么样?

    Proud kids最新测评:1对4的课堂效果怎么样? 当下在线教育市场竞争越来越激烈,很多机构为了获得一定的市场份额,会不惜花重金投入大量的广告宣传,以此来吸引新用户,而有些机构则会通过改变教学模式 ...

最新文章

  1. Linux在线求助 man page
  2. docker 命令详细解释
  3. Sqoop2入门之导入关系型数据库数据到HDFS上(sqoop2-1.99.4版本)
  4. LeetCode 665. 非递减数列(双指针)
  5. Java非对称加密KeyPairGenerator类
  6. 马士兵java教程笔记_马士兵java教程笔记4
  7. 哪三级分类java_技术汇总:第五章:使用angularjs做首页三级分类
  8. linux查看网卡型号
  9. 母版页的铵钮事件去获取子页的内容
  10. Linux 命令 | 常用命令 tree
  11. verlay虚拟化技术_Overlay之VXLAN架构
  12. el-cascader数据绑定值原理之展平操作的算法
  13. Mysql索引:图文并茂,深入探究索引的原理和使用
  14. 系统重温Pandas笔记:(五)变形
  15. 2D转换+动画+3D转换
  16. 【转载】Oracle 查看执行计划
  17. 广工学生“纯手工”打造赛车 将出征F1赛道
  18. 机器学习梯度下降法应用波士顿房价预测
  19. 【181220】VC++学生考试系统(Access)源代码
  20. Docker Hub + Github 自动化构建docker镜像

热门文章

  1. 电脑装双系统------计算机经验
  2. 做衡八的日子(转自VFleaking)
  3. echo服务编写Linux,linux – inetd和echo服务
  4. 实时行情数据——证券市场(股票、期货、期权)
  5. IDEA如何快速获取图片相对路径
  6. 简易的安卓天气app(二)——适配器、每小时数据展示
  7. lazarus 中文教程_lazarus教程
  8. java 双屏_伪程序猿的Windows双屏/效率/美化折腾指南
  9. 热门软件看点:IE和它的对手们
  10. 《人工智能各领域技能树汇总整理》