[传送门])(https://www.lydsy.com/JudgeOnline/problem.php?id=1132)

自己的计算几何还是挺渣的呢。
其实只要考虑一下叉积的式子就可以想到前缀和了,但是显然需要按照极角序来做才能去掉绝对值
代码:

#include<cstdio>
#include<iostream>
#include<algorithm>
using namespace std;
void read(int &x) {char ch; bool ok;for(ok=0,ch=getchar(); !isdigit(ch); ch=getchar()) if(ch=='-') ok=1;for(x=0; isdigit(ch); x=x*10+ch-'0',ch=getchar()); if(ok) x=-x;
}
#define rg register
const int maxn=3010;
int n;long long ans,sumx[maxn],sumy[maxn];
struct oo{int x,y;}a[maxn],b[maxn];
bool cmp(oo a,oo b){return a.x==b.x?a.y<b.y:a.x<b.x;}
oo operator-(oo a,oo b){return (oo){a.x-b.x,a.y-b.y};}
bool Cmp(oo a,oo b){return 1ll*a.x*b.y>1ll*a.y*b.x;}
int main()
{read(n);for(rg int i=1;i<=n;i++)read(a[i].x),read(a[i].y);sort(a+1,a+n+1,cmp);for(rg int i=1;i<=n;i++){for(rg int j=i+1;j<=n;j++)b[j]=a[j]-a[i];sort(b+i+1,b+n+1,Cmp);for(rg int j=n;j>i;j--)ans+=b[j].x*sumy[j+1]-b[j].y*sumx[j+1],sumx[j]=sumx[j+1]+b[j].x,sumy[j]=sumy[j+1]+b[j].y;}printf("%lld.%lld\n",ans/2,ans%2*5);
}

转载于:https://www.cnblogs.com/lcxer/p/10411972.html

bzoj1132:[POI2008]Tro相关推荐

  1. bzoj1132 [POI2008]Tro(叉积)

    bzoj1132 [POI2008]Tro 原题地址:http://www.lydsy.com/JudgeOnline/problem.php?id=1132 题意: 平面上有N个点. 求出所有以这N ...

  2. BZOJ1132: [POI2008]Tro

    所以为啥用long long本地能过所有数据交上去就WA,一定要改int啊 一开始写了个用点到直线距离公式的,维护两个指针扫过去 emmmmmm并不能过样例,因为有根号什么的东西,调不动-. 膜题解发 ...

  3. [BZOJ1132][POI2008]Tro(计算几何)

    题目描述 传送门 题目大意:平面上有N个点. 求出所有以这N个点为顶点的三角形的面积和. 题解 枚举每一个点,以它为原点建立平面直角坐标系,然后其他的点按照极角排序. 向量的叉积满足分配律,所以可以t ...

  4. bzoj1132 [POI2008]Tro

    题目描述 平面上有N个点. 求出所有以这N个点为顶点的三角形的面积和 N<=3000 输入 第一行给出数字N,N在[3,3000] 下面N行给出N个点的坐标,其值在[0,10000] 输出 保留 ...

  5. 【BZOJ1132】[POI2008]Tro 几何

    [BZOJ1132][POI2008]Tro Description 平面上有N个点. 求出所有以这N个点为顶点的三角形的面积和 N<=3000 Input 第一行给出数字N,N在[3,3000 ...

  6. bzoj 1132: [POI2008]Tro

    1132: [POI2008]Tro Time Limit: 20 Sec  Memory Limit: 162 MB Submit: 1663  Solved: 558 [Submit][Statu ...

  7. [POI2008]Tro

    题面 <center>2042: [POI2008]Tro<center> <center>时间限制:20秒 内存限制:162MB<center> 题目 ...

  8. 【bzoj1132】[POI2008] Tro

    水题,用来巩固一下叉积. cross(u,v)=xuyv−xvyucross(u,v)=x_uy_v-x_vy_u,其除以2就是u⃗ \vec{u}到v⃗ \vec{v}形成的有向面积.如果保证v在u ...

  9. 【bzoj1132】[POI2008]Tro 计算几何

    按照横坐标为第一关键字,纵坐标为第二关键字排序, 枚举每个点作为原点 把再它后面的点拿出来,求每一对点与原点构成的三角形的面积 abs(a[i].x*a[j].y-a[i].y*a[j].x) 如果能 ...

最新文章

  1. python numba.jit(该装饰器用于将Python函数编译为本机代码、python运算加速器)
  2. 8148和8127中的ezsdk和dvrsdk
  3. CFA将人工智能列入考试内容折射啥
  4. SQLite使用报告
  5. C#中List的排序(Sort)
  6. 在Idea中连接数据库并生成实体类(mybatis逆向生成实体类)
  7. 【MFiX】记录一些有参考价值的legacy-tut/test算例
  8. 「Python入门」Python代码规范(风格)
  9. zabbix监控软件安装
  10. rtx服务器修改登录端口,rtx服务器地址端口设置
  11. 远程桌面无法连接 计算机死机,远程桌面被远程的机器就死机解决方案
  12. 解决问题:Oracle存储过程执行成功,但数据没有变化
  13. 关于RapidSSL证书
  14. C#汽车租凭(面对对象(封装、继承,多态的应用))
  15. 8086CPU从功能上分为几部分?各部分由什么组成?各部分的功能是什么?
  16. 1*1卷积核的作用(bottleneck的作用)
  17. js改变css样式方法
  18. 前端图片渲染性能优化与实践 — 图片懒加载
  19. 一文弄懂Hive中谓词下推(on与where的区别)
  20. 使用bs4爬取软科大排名并保存在数据库

热门文章

  1. 贝叶斯网的R实现( Bayesian networks in R)bnlearn(1)
  2. c#正则表达式取出数据库中带html标签的内容,C#用正则表达式 获取网页源代码标签的属性或值...
  3. 什么是利用计算机化的知识进行自动推理,基于实例模型的知识推理及其在自动阅卷系统中的应用...
  4. coreboot学习7:ramstage阶段之设备枚举流程
  5. 李迟2011年4月知识积累
  6. 计算机二级晓云是企业人力,全国计算机二级Ms-Office精选真题试卷
  7. 【Flink】flink Operator State 的使用及Redistribute listState UnionListState
  8. 【Antlr】Antler 解析 没有进入 visit 相关方法中 一个愚蠢的问题
  9. 【Spring】jpa数据库表实体命名规则 Unknown column ‘user0_.create_time‘ in ‘field list‘
  10. 【java】instanceof 性能