POJ 3348 Cows (凸包面积)

POJ3348Cows【凸包+多边形求面积】 Language: Default Cows Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 7633   Accepted: 3467 Description Your friend to the south is interested in buildi 阅读详情

http://poj.org/problem?id=3348
题意:求给定 n n n个点的凸包面积除以50。

凸包板子+多边形面积板子。

#include <cstdio>
#include <cstring>
#include <algorithm>
#include <iostream>
#include <cmath>
using namespace std;
struct Point
{
	int x,y;
	Point(){}
	Point(int _x,int _y)
	{
		x=_x;y=_y;
	}
	Point operator -(const Point &b)const
	{
		return Point(x-b.x,y-b.y);
	}
	int operator ^(const Point &b)const
	{
		return x*b.y-y*b.x;
	}
	int operator *(const Point &b) const
	{
		return x*b.x+y*b.y;
	}
	void input()
	{
		scanf("%d%d",&x,&y);
	}
};
//距离的平方
int dist2(Point a,Point b)
{
	return (a-b)*(a-b);
}
//二维凸包(int)
const int MAXN=50010;
Point list[MAXN];
int Stack[MAXN],top;
//相对于list[0]进行极角排序
bool _cmp(Point p1,Point p2)
{
	double tmp=(p1-list[0])^(p2-list[0]);
	if(tmp>0)
		return true;
	else if(tmp==0&&dist2(p1,list[0])<=dist2(p2,list[0]))
		return true;
	else return false;
}
void Graham(int n)
{
	Point p0;
	int k=0;
	p0=list[0];
	//找最左下的点
	for(int i=1;i<n;i++)
	{
		if((p0.y>list[i].y)||(p0.y==list[i].y&&p0.x>list[i].x))
		{
			p0=list[i];
			k=i;
		}
	}
	swap(list[k],list[0]);
	sort(list+1,list+n,_cmp);
	if(n==1)
	{
		top=1;
		Stack[0]=0;
		return ;
	}
	if(n==2)
	{
		top=2;
		Stack[0]=0;
		Stack[1]=1;
		return ;
	}
	Stack[0]=0;
	Stack[1]=1;
	top=2;
	for(int i=2;i<n;i++)
	{
		while(top>1&&((list[Stack[top-1]]-list[Stack[top-2]])^(list[i]-list[Stack[top-2]]))<=0)
			top--;
		Stack[top++]=i;
	}
}
int CalcArea(Point p[],int n)
{
	int res=0;
	for(int i=0;i<n;i++)
		res+=(p[i]^p[(i+1)%n])/2;
	return res;
}
Point p[MAXN];
int main()
{
	int n;
	scanf("%d",&n);
	for(int i=0;i<n;i++)
		 list[i].input();
	Graham(n);
	for(int i=0;i<top;i++)
		p[i]=list[Stack[i]];
    printf("%d",CalcArea(p,top)/50);
	return 0;
}

C#+Winform+OpenCvSharp实战:5步搞定工业视觉检测框架(附源码下载) 本文详细介绍了如何使用C#、Winform和OpenCvSharp构建工业视觉检测框架,通过5个关键步骤实现高效、稳定的视觉检测系统。内容涵盖环境配置、相机集成、核心算法实现、系统集成与通信,以及部署优化,帮助开发者快速掌握工业视觉检测技术,提升检测精度和效率。附完整源码下载,助力工业数字化转型。 阅读详情

相关推荐

Tailscale 自建 DERP 中继服务器

Tailscale自建DERP中继服务器

Accompagner的博客 4325

POJ 3348 Cows(凸包求面积)

POJ 3348 Cows(凸包求面积) http://poj.org/problem?id=3348 题意:        给你n颗树的坐标,要你求出它们构成凸包的面积.然后每头牛需要50平方米面积生存,问你这个凸包最多能支持多少牛生存? 分析:        首先求出凸包的所有节点.        然后求出凸包面积.        输出凸包面积/50的整数部分. AC代码:

code 1128

华为[ENSP]OSPF的配置实例(单区域+多区域)

华为[ENSP]OSPF的配置实例(单区域+多区域)

weixin_62594100的博客 2万+

POJ 3348 Cows(凸包面积)

思路:就把凸包求出来,再固定一个点,其余的点相邻求叉积的一半就行了。

weixin_48024524的博客 161

详解最大似然估计(MLE)、最大后验概率估计(MAP),以及贝叶斯公式的理解

声明:本文为原创文章,发表于nebulaf91的csdn博客。欢迎转载,但请务必保留本信息,注明文章出处。 本文作者: nebulaf91 本文原始地址:最大似然估计(Maximum likelihood estimation, 简称MLE)和最大后验概率估计(Maximum a posteriori estimation, 简称MAP)是很常用的两种参数估计方法,如果不理解这两种方法的思路,很

nebulaf91的博客 33万+

CAN开发笔记(TI开发者推荐笔记)

查阅了很多资料没有查阅到关于5728芯片CAN模块寄存器的介绍,希望通过本文能给做CAN驱动的后来者有一点参考意义,我也是刚接触CAN模块有些不足请各位多多指正。 由下图所示是CAN模块初始化流程图 首先要开始初始化,设置CAN位时间,然后配置message objects, 完成初始化。 1.开始初始化 首先要控制DCAN_CTL 寄存器,该寄存器是CAN模块的总控制器,很多配置通过...

weixin_44316996的博客 3561

Cows POJ 3348 (凸包面积)

题目地址:http://poj.org/problem?id=3348 本题在于求凸包面积,方法是将一个n点凸包的面积看成n-2个三角形的面积之和,进行求解。 #include<stdio.h> #include<math.h> #include<algorithm> #include<iostream> using namespace std; c...

呼吸 228

Code Composer Studio 12.0.0版本 官方例程导入实战指南

本文详细介绍了在Code Composer Studio 12.0.0版本中,如何利用内置的Resource Explorer工具高效导入官方例程的完整实战指南。通过分步讲解定位开发板、导入工程、配置编译器及调试验证等关键操作,帮助开发者快速上手TI微控制器开发,避免常见错误,有效提升学习与开发效率。

weixin_29169899的博客 120

poj 3348 cows 凸包面积

1 /** 2 大意: 给定多个点求其确定的面积可以存放多少个面积为50的东西 3 思路: 1、凸包确定多边形 4 2、 多边形求面积 5 3、 面积/50 取整 6 **/ 7 #include <iostream> 8 #include <algorithm> 9 using nam...

a18865477815的博客 173

Python中优化模块scipy.optimize的优化算法介绍

如果你有一个特殊的优化问题,你可以使用对象来自定义问题的求解。# 自定义目标函数# 自定义优化问题custom_problem.fun = custom_objective_function # 目标函数custom_problem.x = [1, 1] # 初始猜测# 执行优化# 打印结果在上述例子中,我们自定义了一个对象,并指定了目标函数和初始猜测,然后使用minimize函数进行求解。Scipy的优化模块提供了丰富的功能,适用于各种优化问题。

Pandas120的博客 3045

【软件测试】- 公有云、私有云、混合云简介以及如何在公有云与私有云上分别搭建测试环境

公有云、私有云以及混合云是目前云计算领域的三种主要模式。它们之间的区别主要在于部署方式、数据访问和管理控制的不同。在阿里云或腾讯云上使用 Kubernetes 和 Docker 搭建测试环境可以提供高度的可伸缩性和灵活性。这样的环境非常适合于需要在多种配置和条件下进行测试的复杂应用。通过云服务提供的工具和服务,可以轻松管理和监控整个测试过程。在云服务上搭建测试环境涉及选择合适的云提供商、配置云资源、安装和设置所需软件等步骤。### 1. 选择云服务提供商。

weixin_46453070的博客 2338

poj3348-Cows 求凸包及其面积

凸包求面积

wangheng 354

Dify 第 3 篇 Dify 入门示例 - 聊天助手

本文介绍了如何使用Dify平台快速搭建一个聊天助手。首先通过创建空白应用并选择"聊天助手"模板完成基础设置,然后安装配置通义千问等大语言模型(LLM)并设置API密钥。进阶部分演示了如何创建支持编程语言选择的代码解释器,包括添加提示词约束、插入变量、设置开场白等功能。最后展示了运行效果:用户可选择编程语言后输入代码,系统会给出相应解释。文章还提到应用支持发布共享,并附有Dify官方文档参考链接。

甘蓝的专栏 863

POJ 3348 Cows (凸包+多边形面积)

http://poj.org/problem?id=3348 大意:用已有的树围成最大的牧场来养牛,每头牛生活至少需要50平方米。求出能养多少头? 听说此题不难,然而我因为打错了一个变量看了一晚上(外加一早上T_T)。大致思路是:用凸包确定能构造的最大多边形,然后求解凸包多边形的面积。 耻辱句:最后求面积的: for(int i=2;itop;i++){ 不是: for(int

theArcticOcean 767

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

poj3348 Cows 凸包+多边形面积 水题

/* poj3348 Cows 凸包+多边形面积 水题 floor向下取整,返回的是double */ #include&lt;stdio.h&gt; #include&lt;math.h&gt; #include &lt;algorithm&gt; using namespace std; const double eps = 1e-8; struct point { ...

weixin_34357267的博客 103

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

POJ3348 Cows【凸包+多边形求面积】

 POJ3348Cows 凸包+多边形求面积  个人分类: 计算几何凸包 Language: Default Cows Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 7633   Accepted: 3467 Descripti...

紫芝的博客 562

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

Cows 【POJ 3348】【凸包+多边形面积】

题目链接 题目大意 给出n个点,让你求凸包的面积/50的值是多少 解题思路 先求出凸包,然后根据多边形面积公式求出公式 多边形面积公式: for(int i=0;i<m-1;i++) ans+=(ch[i].x*ch[i+1].y-ch[i+1].x*ch[i].y); ans=abs(ans)/2.0; AC代码 #include<stdio.h&g...

qq_41925919的博客 190

poj3348 Cows【凸包面积】

题目链接:http://poj.org/problem?id=3348 题意:给你n个点,让你围城一个多边形,也就是求凸包,然后50平方米才能有一头牛,问你这些点构成的多边形能养几头牛 解析:求凸包面积/50,向下取整#include <iostream> #include <cstdio> #include <cstring> #include <algorithm> #include <cm

22h's Blog 474

POJ - 3348 Cows 凸包求面积

题目链接:https://cn.vjudge.net/problem/POJ-3348 题意:给出n个点,求所形成的区域能放多少cow,一个cow占50 题解:先求下凸包上的点,在叉积求下面积即可 #include<iostream> #include<cstdio> #include<cmath> #include<cstring> #in...

还我笑颜 223

【POJ3348】Cows【凸包面积】

linklinklink 分析: 求出凸包面积 最后/50/50/50就是牛的数量 CODE: #include<iostream> #include<cstdio> #include<algorithm> #include<cstring> #include<stack> #include<cmath> #define reg register using namespace std; typedef long long ll; i.

绫 172

POJ 3348 Cows(凸包面积)

const int N=1e4+5; int i,j,k; int n,m,t; struct Point { double x,y; Point(double x=0,double y=0):x(x),y(y){} }p[N],ch[N]; typedef Point Vector; Vector operator+(Vector a,Vector b){ return Vector(a.x-b.x,a.y-...

C_Dreamy的博客 491

poj3348Cows(凸包求多边形面积)

题目链接: http://poj.org/problem?id=3348 思路: 先对点进行排序,然后求出凸包。对凸包上的点进行面积计算,即将多边形面积分成多个三角形,利用叉积计算即可。 代码: #include #include #include #include #define PI acos(-1.0) #define eps 0.00000001 using namespac

hahahaha 930

Poj 3348 Cows (凸包面积)

题目链接:http://poj.org/problem?id=3348 题意:凸包面积除以50 思路:Graham水平序求出凸包后,每相邻两点与原点构成三角形,叉积求有向面积之和 #include #include #include #include using namespace std; const int NUM=10005; int n,len; struct Point

whyorwhnt的专栏 1058

POJ 3348 Cows 求凸包面积

题目描述:http://poj.org/problem?id=3348 解题思路:先求凸包然后求面积。 /* * 2014.11.28 * Problem: 3348 * Memory: 180K Time: 16MS * Language: C++ Result: Accepted * */ #include "iostream" #include "cma

354

POJ 3348 Cows (凸包+求面积)

Cows Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 7869   Accepted: 3565 Description Your friend to the south is interested in building fences and turning

滴水穿石,慢慢积累,总会有成果 586

POJ 3348 Cows 寻找凸包 凸包面积

非常简单的凸包      找凸包  凸包面积的计算 直接上代码

泪无痕 903
上一篇: POJ 1329 Circle Through Three Points (三角形外心)
下一篇: POJ 1113 Wall (凸包周长)
sdxtcqs
博客等级 码龄11年 8粉丝 106原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值