当前位置: 首页 > news >正文

[Tyvj1462]凸多边形

【题目分析】:还是很裸的凸包,Master_Chivu的数据eps要1e-12.

【Code】:

const
	eps=1e-12;
type
	point=record
		x,y:extended;
	end;
var
	p,q:array[0..200000]of point;
	n,m,i,k:longint; ans:extended;
procedure qsort(l,r:longint);
	var i,j:longint; t:point; x,y:extended;
	begin
		i:=l; j:=r; x:=p[(l+r)>>1].x; y:=p[(l+r)>>1].y;
		repeat
			while (p[i].x<x) or (p[i].x=x) and (p[i].y<y) do inc(i);
			while (p[j].x>x) or (p[j].x=x) and (p[j].y>y) do dec(j);
			if i<=j then begin
				t:=p[i]; p[i]:=p[j]; p[j]:=t; inc(i); dec(j);
			end;
		until i>j;
		if l<j then qsort(l,j); if i<r then qsort(i,r);
	end;
function cross(p0,p1,p2:point):extended;
	begin
		exit((p1.x-p0.x)*(p2.y-p0.y)-(p2.x-p0.x)*(p1.y-p0.y));
	end;
begin
	readln(n);
	for i:=1 to n do readln(p[i].x,p[i].y);
	qsort(1,n);
	m:=0;
	for i:=1 to n do begin
		while (m>1) and (cross(q[m-1],q[m],p[i])<=eps) do dec(m);
		inc(m); q[m]:=p[i];
	end;
	k:=m;
	for i:=n-1 downto 1 do begin
		while (m>k) and (cross(q[m-1],q[m],p[i])<=eps) do dec(m);
		inc(m); q[m]:=p[i];
	end;
	for i:=m downto 2 do writeln(q[i].x:0:4,' ',q[i].y:0:4);
end.

转载于:https://www.cnblogs.com/Skywalker-Q/archive/2011/03/16/1986032.html

相关文章:

  • objective-c内存管理基础
  • Windows API一日一练(54)WriteFile和ReadFile函数
  • 关于应用系统的性能优化
  • 嵌入式WEB中CGI调用另外的html
  • Web系统下Office文档的处理 之OpenXML基础
  • C# 事件与委托
  • 细说Linux系统优化-实践篇
  • C# Timer用法
  • 2011年3月四级网络工程师试卷、答案及考点解析
  • ubuntu 9.04下安装NS2
  • SQL Server代理服务无法启动的处理方法(转载)
  • PXE脚本
  • 系统指令
  • 隆文互动营销研究院服务的企业微博再创新高
  • JAVA闭包
  • (三)从jvm层面了解线程的启动和停止
  • 0基础学习移动端适配
  • C++类中的特殊成员函数
  • echarts花样作死的坑
  • Java 多线程编程之:notify 和 wait 用法
  • Map集合、散列表、红黑树介绍
  • Python学习之路13-记分
  • REST架构的思考
  • vue:响应原理
  • vue2.0一起在懵逼的海洋里越陷越深(四)
  • 给自己的博客网站加上酷炫的初音未来音乐游戏?
  • 如何使用 OAuth 2.0 将 LinkedIn 集成入 iOS 应用
  • 如何选择开源的机器学习框架?
  • 使用 @font-face
  • 异常机制详解
  • 再谈express与koa的对比
  • HanLP分词命名实体提取详解
  • 格斗健身潮牌24KiCK获近千万Pre-A轮融资,用户留存高达9个月 ...
  • 容器镜像
  • ​ ​Redis(五)主从复制:主从模式介绍、配置、拓扑(一主一从结构、一主多从结构、树形主从结构)、原理(复制过程、​​​​​​​数据同步psync)、总结
  • ​TypeScript都不会用,也敢说会前端?
  • # 睡眠3秒_床上这样睡觉的人,睡眠质量多半不好
  • ###STL(标准模板库)
  • #define,static,const,三种常量的区别
  • #Ubuntu(修改root信息)
  • (1) caustics\
  • (14)Hive调优——合并小文件
  • (3)llvm ir转换过程
  • (C++17) std算法之执行策略 execution
  • (Java数据结构)ArrayList
  • (zt)最盛行的警世狂言(爆笑)
  • (八)c52学习之旅-中断实验
  • (二)fiber的基本认识
  • (分布式缓存)Redis分片集群
  • (附源码)springboot“微印象”在线打印预约系统 毕业设计 061642
  • (十六)串口UART
  • (十三)Flask之特殊装饰器详解
  • (一)appium-desktop定位元素原理
  • (转)3D模板阴影原理
  • (转贴)用VML开发工作流设计器 UCML.NET工作流管理系统