• 大小: 1.56KB
    文件类型: .cpp
    金币: 1
    下载: 0 次
    发布日期: 2021-02-01
  • 标签:

资源简介

凸包(c++入门级示例)

资源截图

代码片段和文件信息

#include
#include
#include
#include
#define CLR(x) memset(x0sizeof(x))
#define ll long long int
#define PI acos(-1.0)
#define db double
using namespace std;

struct point
{
    int xy;
}p[1005]s[1005];

/*叉积计算*/

int det(int x1int y1int x2int y2)
{
    return x1*y2-x2*y1;
}

/* 求倒数第二个点和倒数第一个点与倒数第一个点与当前点的叉乘*/
int cross(point opoint apoint b)
{
    return det(a.x-o.xa.y-o.yb.x-o.xb.y-o.y);
}

/*求平方*/

db f(int x)
{
    return x*x*1.0;
}

/*水平排序*/

bool cmp(point apoint b)
{
    if(a.y==b.y)
        return a.x    return a.y}

db dis(point apoint b)
{
    return sqrt(f(a.x-b.x)+f(a.y-b.y));
}

int nl;

int main()
{
    while(scanf(“%d“&n)!=EOF)
 

评论

共有 条评论