gym224647B

题意:

在二维平面中·选出一个面积最小的三角形,输出这个三角形面积的两倍。

解法:

首先,最优解一定在相邻最近的三个点中产生。

然后我们就可以用向量求三角形的面积。

CODE:

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cmath> using namespace std; #define LL long long
const int N = 4e5 + 10;
const LL MAX = 9223372036854775805; struct Vec {
LL x , y;
} p[N]; inline LL labs(LL x) {
return x < 0 ? - x : x ;
}
inline LL calc(Vec a , Vec b) {
return labs (a.x * b.y - a.y * b.x);
}
LL ans = MAX,n; int main () {
scanf("%lld",&n);
for(int i = 1 ; i <= n ; i++) {
scanf("%lld%lld",&p[i].x,&p[i].y);
p[i + n] = p[i];
}
for(int i = 1 ; i <= n ; i++) {
int j = i + 1,k = j + 1 ; // i - j , k - j
Vec a,b;
a.x = p[i].x - p[j].x;
a.y = p[i].y - p[j].y;
b.x = p[k].x - p[j].x;
b.y = p[k].y - p[j].y;
LL res = calc(a,b) ;
if(res != 0) ans = min(ans,res);
}
printf("%lld\n",ans);
//system("pause");
return 0 ;
}

gym224647B的更多相关文章

随机推荐

  1. 高射炮打蚊子,杀鸡用绝世好剑:在SAP Kyma上运行UI5应用

    国人在表述"大材小用"这个场景时,总喜欢用一些实物来类比,比如:高射炮打蚊子. 英国QF 3.7英寸(94mm)高射炮,战斗全重超过9.3吨,全长近5米,最大射程约18公里,最大射 ...

  2. Kafka的性能分析

    都说Kafka的吞吐量很大,但是我一直不直到Kafka为何有如此大的吞吐量.最近在看Kafka权威指南,陆陆续续得到了如下结论: 1.分区:Kafka支持分区,这样就支持多个生产者和多个消费者同时请求 ...

  3. stm32f429 仿真器不能识别芯片

    刚买的野火挑战者开发板,下载几次程序后,忽然就不能通过JLINK下载了,提示如下错误: No Cortex-M Device found in JTAG chain. Error: Flash Dow ...

  4. Python概要介绍

    Python的由来 Python的创始人(Guido Van Rossum)吉多·范罗苏姆——龟叔,1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本解释程序,做 ...

  5. 搭建配置私服-nexus ,Maven中的使用——3

    1. 下载nexus包,将bin目录添加到PATH路径下去   2. 修改: bin/jsw/conf 下面的wrapper.conf文件: 修改java命令绝对路径   修改之后:   3.  进入 ...

  6. 2018江苏徐州icpc试题-A-生化危机【多源点-基础广搜】

  7. python 2.7安装pygame报错解决办法pygame-1.9.4-cp27-cp27m-win_amd64.whl is not a supported wheel on this platform.

    python下载python安装包 https://www.lfd.uci.edu/~gohlke/pythonlibs/#pygame 下载完后进入cmd命令行执行安装,报错: pygame-1.9 ...

  8. Red Hat Enterprise Linux 7.0

    简介 Red Hat Enterprise Linux是Red Hat公司的Linux发行版,面向商业市场,包括大型机.红帽公司从Red Hat Enterprise Linux 5开始对企业版LIN ...

  9. 手把手教你在CentOS上搭建Kubernetes集群

    作者:ChamPly 安装CentOS 1.安装net-tools [root@localhost ~]# yum install -y net-tools 2.关闭firewalld [root@l ...

  10. [ 转载 ] Java基础二

    前言 关于赢在面试的Java题系列基本收集整理完成了,所有题目都是经过精心挑选的,很基础又考验求职者的基本功,应该说被面试到的几率很大.这里整理挑选出来供大家面试前拿来看一看,所有题目整理自网络,有一 ...