计算几何
GoLakerswxy
这个作者很懒,什么都没留下…
展开
-
几何模板—kuangbin
// 计算几何模板//二维平面using namespace std;const double eps = 1e-8;const double inf = 1e20;const double pi = acos(-1.0);const int maxp = 1010;//Compares a double to zeroint sgn(double x){ if(fabs...原创 2018-07-27 13:49:48 · 923 阅读 · 0 评论 -
牛客网多校3 Distance to Work (圆与多边形面积交)
题目:给你一个多变形,再给你几个圆心点,问每个圆心点的半径为多少时,圆的面积为多边形面积的(1-p/q);思路:二分,注意精度,拼凑模板#include<bits/stdc++.h>using namespace std;const double eps = 1e-8;const double inf = 1e20;const double pi = acos(-1....原创 2018-07-27 20:58:39 · 330 阅读 · 0 评论 -
牛客网多校2 message(凸包维护)
题目:给你n条直线的y=ax+by=ax+b中的aa和bb,和m次查询,每次查询给要求的直线的y=cx+dy=cx+d,中的cc和dd,要求出这条直线与n条直线交点中,x最大的值,且x大于0,如果不存在输出No cross.(n<=5e4,m<=5e4)思路:交点x= - (b-d)/(a-c) 可以看作是两个点(a,b),(c,d)斜率的相反数。将之前输入的直线的斜率和截距看作一...原创 2018-08-09 19:54:13 · 241 阅读 · 0 评论 -
Color it(找圆内整数点的个数)
题目:在n*m(1<=n<=4e5,1<=m<=4e5)的区域上,有q (q<=200)个圆(xi,yi)半径为r,问有多少整数点没有被盖住。思路:枚举0到m每个y坐标,然后暴力查询q个圆与y=yi这条线相交的整数点的个数,可以对交出来的线段排序扫一遍,也可以离散一下映射到相应的点上,统计一下就好了。#include<bits/stdc++.h>...原创 2018-08-05 18:50:25 · 1781 阅读 · 0 评论 -
Fruit Ninja (随机化)
题目:一个平面上有n个点,问会不会有一条线段穿过的点数占到总点数的x(0<x<1,小数点后一位)以上。也就是问会不会有一条线段能穿过>=m个点。思路:从n个点里随机拿两个点,当成直线穿过的点,暴力查询这条直线经过多少个点。我是随机拿一千次判断的,之所以可以随机处理,因为直线上点数是比较多的,选不到上面的点的概率几乎为0了。#include <bits/stdc++...原创 2018-08-05 18:59:17 · 198 阅读 · 0 评论 -
hdu 6398 Pizza Hub(计算几何)
题目:给定三角形三点坐标,可以任意旋转,和矩形的宽度,求矩形的最小高度,使得矩形能装下三角形。思路:最优的情况下肯定是有一个顶点顶在矩形的角上,然后枚举相邻两条边哪一个在上哪一个在下面就可以了。边界很容易出错,要判断能不能装进去基础上才能找最优的放法。#include <bits/stdc++.h>using namespace std;#define eps 1e-8...原创 2018-08-16 10:24:47 · 380 阅读 · 0 评论 -
hdu 6435 Problem J. CSGO(多维最远曼哈顿距离)
题目:在两个点集内各选一点求最远曼哈顿距离。思路:把绝对值去掉后有2^k次方种可能的情况,都枚举一遍。#include <bits/stdc++.h>using namespace std;typedef long long ll;const int maxn = 1e5+10;const ll inf = 1e12;struct point{ ll ...原创 2018-08-24 20:05:41 · 278 阅读 · 0 评论 -
HDU-5527 An Easy Physics Problem(平面上点到圆碰撞反弹)
题目:给一个圆和圆外两点A、B,A以给定的速度出发,若碰到圆则发生完全弹性碰撞,问能否经过B。思路:分类讨论1:A的路径碰到了圆,找出两条射线判断是否经过B点。2:A的路径没有碰到了圆,判断一条射线是否经过B点。精度是真的麻烦。。#include<bits/stdc++.h>using namespace std;typedef long double ldouble...原创 2018-09-03 20:08:23 · 191 阅读 · 0 评论