![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
计算几何
v5zsq
新的一天,新的不会
展开
-
HDU 5448 Marisa's Cake(计算几何)
Description 给出一个n个点的凸包(逆时针方向给出点的坐标),求从这个凸包上任选不少于三个点的凸多边形面积的二倍的和 Input 第一行一整数T表示用例组数,每组用例首先输入一整数n表示用例组数,之后按逆时针反向输入这n个点的坐标xi,yi(T<=10,3<=n<=100000,0<=xi,yi<=10^9) Output 对于每组用例,输出从这n个点的任取不少于三个点的凸多边形原创 2016-08-25 11:03:54 · 420 阅读 · 0 评论 -
CodeForces 372 E.Drawing Circles is Fun(计算几何+dp)
Description 给出有n个点的点集S,要求从S中选出一个子集由一些点对(P[1],p[2]),(p[3],p[4]),…,(p[2k-1],p[2k])组成且满足下列三个条件: 1.k>=2 2.所有P[i]互不相同 3.对任意两个点对(P[2i-1],P[2i]),(p[2j-1],P[2j]),三角形OP[2i-1]P[2j-1]的外切圆与三角形OP[2i]P[2j]相切,三角形原创 2017-07-18 18:23:01 · 553 阅读 · 0 评论 -
HDU 6080 度度熊保护村庄(计算几何+最小环-Floyd)
Description哗啦啦村袭击了喵哈哈村!度度熊为了拯救喵哈哈村,带着自己的伙伴去救援喵哈哈村去了!度度熊与伙伴们很快的就过来占据了喵哈哈村的各个军事要地,牢牢的守住了喵哈哈村。但是度度熊发现,这是一场旷日持久的战斗,所以度度熊决定要以逸待劳,保存尽量多的体力,去迎战哗啦啦村的战士。于是度度熊决定派尽量多的人去休息,但是同时也不能松懈对喵哈哈村的保护。换句话而言,度度熊希望尽量多的人休息,而且存原创 2017-08-17 09:54:35 · 1342 阅读 · 0 评论 -
CodeForces 196 C.Paint Tree(计算几何+递归)
Description 给出一棵n个节点的树和二维平面上n个点的坐标,要求把树上的点一一映射到这n个点使得树边不在非顶点处相交 Input 第一行一整数n表示点数,之后n-1行每行两个整数u和v表示一条树边,最后n行每行两个整数x,y表示一个点(1<=n<=1500,-1e9<=x,y<=1e9) Output 输出树上n个点在映射到坐标系中后点的编号 Sample Input 3原创 2017-07-26 23:01:12 · 440 阅读 · 0 评论 -
HDU 6097 Mindis(计算几何)
Description给出一个圆心为O(0,0)O(0,0),半径为rr的圆,并给出圆内两个距圆心等距的点P,QP,Q,要求在圆上找一个点DD,使得|PD|+|QD||PD|+|QD|最小,输出最小值Input第一行一个整数TT表示用例组数,每组用例首先输入一整数rr表示圆的半径,之后输入P,QP,Q两点的横纵坐标xp,yp,xq,yqxp,yp,xq,yq,保证|OP|=|OQ||OP|=|OQ|原创 2017-09-06 11:44:12 · 353 阅读 · 0 评论 -
HDU 6127 Hard challenge(计算几何)
Description给出二维平面nn个点的坐标(xi,yi)(x_i,y_i)和权值valival_i,保证任意两点不重复且连线不经过原点,经过原点但不经过这nn个点中任一点的直线,定义得分为这条直线两边点点权和的乘积,问最大得分Input第一行一整数TT表示用例组数,每组用例首先输入一整数nn表示点数,之后nn行每行输入三个整数xi,yi,valix_i,y_i,val_i表示点的坐标和权值(1原创 2017-09-26 16:24:42 · 349 阅读 · 0 评论 -
CodeForces 406 D.Hill Climbing (凸包-Graham扫描法+在线倍增LCA)
Description 有n个山坡,第i个山坡顶端坐标为(x[i],y[i]),一个山坡可以到另一个山坡当且仅当从另一个山坡可以看到这个山坡,现在给出q次查询,每次查询给出两个人所在山坡编号,如果左边的人可以到达右边人的山坡那右边人就不动等着左边人来,否则右边人往右到一个可以达到的最右边的山坡继续上面的步骤吗,问两个人最后停留的位置 Input 第一行一整数n表示山坡数量,之后n行每行两个整数原创 2017-07-18 18:44:53 · 566 阅读 · 0 评论 -
CodeForces 559 D.Randomizer(计算几何+期望)
Description给出一个nnn个点的凸包,等概率选则该凸包点集的大于等于三的子集形成一个新凸包,问该凸包内部整点的期望值Input第一行输入一整数nnn表示点数,之后nnn行每行输入两个整数xi,yixi,yix_i,y_i表示第iii个点的坐标,按顺时针顺序给出这些点的坐标(3≤n≤105,−109≤xi,yi≤109)(3≤n≤105,−109≤xi,yi≤109)(3\le...原创 2018-01-11 19:43:14 · 464 阅读 · 0 评论 -
GYM 101142 I.Integral Polygons(计算几何+组合数学)
Description给出一个整点凸多边形,要求连接其两点顶点将该多边形分成两个面积非零且面积为整数的凸多边形,问方案数Input第一行一整数nn表示点数,之后nn行每行输入两个整数xi,yix_i,y_i表示第ii个点的坐标,点以顺时针或逆时针有序输入(4≤n≤200000,−109≤xi,yi≤109)(4\le n\le 200000,-10^9\le x_i,y_i\le原创 2018-01-21 11:51:26 · 631 阅读 · 0 评论 -
SPOJ 28286 BLMIRINA - Archery Training(计算几何)
Description 给出一个圆的圆心(x,y)和半径r,从原点向该圆上一点连一条线段(线段与圆只能有一个交点),问连向哪一个点可以使得这条线段的长度最长 Input 第一行一整数T表示用例组数,每组用例输入三个整数x,y,r分别表示圆心的横纵坐标和半径(1<=T<=1e5,1<=r<=x,y<=1000) Output 对于每组用例,输出满足条件的点的横纵坐标,如果有多种方案则输出其中原创 2017-07-18 13:32:09 · 549 阅读 · 0 评论 -
CodeForces 682 E.Alyona and Triangles(计算几何)
Description 给出n个整点,其中任意三个点构成三角形的面积不超过S,要求构造一个面积不超过4S的大三角形包含这n个点 Input 第一行两个整数n和S,之后n行每行两个整数x,y表示该点横纵坐标 (3<=n<=5000,1<=S<=1e18,-1e8<=x,y<=1e8) Output 输出大三角形三点坐标 Sample Input 4 1 0 0 1 0 0 1原创 2017-07-17 09:11:24 · 522 阅读 · 0 评论 -
SPOJ 8073 CIRU - The area of the union of circles(圆面积并)
Description 给出n个圆的圆心坐标和半径,求这n个圆的面积并 Input 第一行一整数n表示圆的个数,之后n行每行三个整数x[i],y[i],r[i]表示第i个圆的圆心坐标和半径(1<=n<=1000,|x[i]|,|y[i]|,r[i]<=1000) Output 输出这n个圆的面积并,结果保留小数点后三位 Sample Input 3 0 0 1 0 0 1 100原创 2017-07-20 10:48:41 · 636 阅读 · 0 评论 -
HDU 5784 How Many Triangles(计算几何)
Description 给出n个整点,问这n个点能够形成多少个不同的锐角三角形 Input 多组用例,每组用例首先输入一个整数n表示点数,之后n行每行两个整数x和y表示该点坐标,以文件尾结束输入(3<=n<=2000,0<=x,y<=10^9) Output 对于每组用例,输出这n个点能够形成的锐角三角形个数 Sample Input 3 1 1 2 2 2 3 3 1 1原创 2016-08-26 10:34:19 · 579 阅读 · 0 评论 -
POJ 3304 Segments(计算几何)
Description 给出n条线段,问是否存在一条直线与这n条线段的任一条都相交 Input 第一行一整数T表示用例组数,每组用例首先输入一整数n表示线段数量,之后n行每行四个实数x1,y1,x2,y2分别表示线段两端点横纵坐标 Output 对于每组用例,如果存在一条直线与这n条线段的任一条都相交则输出YES!,否则输出NO! Sample Input 3 2 1.0 2.0原创 2017-01-19 15:08:18 · 677 阅读 · 0 评论 -
GYM 100488 A. Yet Another Goat in the Garden(计算几何)
Description 给出一个三角形和一个可以放进去的圆的半径,这个圆会一直移动(不会越过边界),问该三角形中可以被圆覆盖的部分占整个三角形的比例 Input 三角形的三边边长a,b,c以及圆的半径r,保证a,b,c可以构成一个三角形,保证以r为半径的圆可以放进三角形中(1<=a,b,c,r<=1e4) Output 输出三角形中可以被圆覆盖的部分占整个三角形的比例 Sample In原创 2017-03-08 13:39:45 · 550 阅读 · 0 评论 -
GYM 101173 C.Convex Contour(计算几何)
Description 给出若干三角形正方形和圆形摆成一排,求它们构成的凸型的周长,三角形正方形边长和圆的直径均为单位长度 Input 第一行一个整数n表示图形的个数,之后一个长度为n的字符串表示每个图形是什么,T表示三角形,S表示正方形,C表示圆(1<=n<=20) Output 输出构成的凸型的周长 Sample Input 4 TSTC Sample Output 9.原创 2017-03-20 14:46:15 · 745 阅读 · 0 评论 -
GYM 100182 B.Euclid(计算几何)
Description 给出A,B,C,D,E,F的坐标,求H和G点坐标使得平行四边形ABGH的面积与三角形DEF面积相等 Input 多组用例,每组用例十二个实数表示六个点的横纵坐标,以12个0结束输入 Output 对于每组用例,输出G点和H点的横纵坐标 Sample Input 0 0 5 0 0 5 3 2 7 2 0 4 1.3 2.6 12.1 4.5 8.1 13.原创 2017-03-11 13:34:36 · 350 阅读 · 0 评论 -
GYM 101128 J.Saint John Festival(凸包-Graham扫描法+二分)
Description 给出l个大点和s个小点,问有多少小点被三个大点组成的三角形覆盖 Input 第一行一整数l表示大点的数量,之后l行每行两个整数x,y表示该大点的横纵坐标,然后输入一整数s表示小点数量,最后s行每行两个整数x和y表示该小点的横纵坐标(3<=l<=10000,1<=s<=50000,0<=x,y<=2^30) Output 输出满足条件的小点的数量 Sample In原创 2017-03-13 15:58:20 · 777 阅读 · 1 评论 -
CodeForces 437 E.The Child and Polygon(dp+计算几何)
Description 给出一个简单多边形,问其三角剖分方案 Input 第一行一整数n表示点数,之后顺时针或逆时针给出这n个点的坐标(3<=n<=200,|xi|,|yi|<=1e7) Output 输出三角剖分方案数,结果模1e9+7 Sample Input 4 0 0 0 1 1 1 1 0 Sample Output 2 Solution ...原创 2017-04-12 15:53:58 · 505 阅读 · 0 评论 -
CodeForces 385 D.Bear and Floodlight(状压DP+计算几何)
Description 二维平面上有n个探照灯,第i个灯在(xi,yi)出,且可以照亮任意a[i]度角的范围,问这n个灯最多可照亮x轴上区间[l,r]区域从l开始被照亮的连续的最长长度 Input 第一行三个整数n,l,r表示灯的数量和要照亮的范围,之后n行每行三个整数xi,yi,ai分别表示第i个灯的二维坐标和照亮的范围(1<=n<=20,-1e5<=l<=r<=1e5,-1000<=xi<原创 2017-04-16 14:27:44 · 415 阅读 · 0 评论 -
HDU 6147 Pokémon GO II(计算几何)
Description起点在原点,每次操作给出一个长度xx,表示从当前位置向前走xx米后右转,问路径是否会相交Input第一行一整数TT表示用例组数,每组用例首先输入操作数nn,之后输入nn个距离xi(1≤T≤100,1≤n≤106,1≤xi≤109)x_i(1\le T\le 100,1\le n\le 10^6,1\le x_i\le 10^9)Output如果路径会相交则原创 2018-01-21 19:32:20 · 315 阅读 · 0 评论 -
GYM 100796 I.Shell Game(计算几何)
Description给出一个圆台,上底面半径rr,下底面半径RR,高hh,问该圆台内部可以放的最大球的半径Input三个整数r,R,h(1≤rR≤104,1≤h≤104)r,R,h(1\le rOutput输出该圆台内部可防止的最大球的半径,误差不超过10−610^{-6}Sample Input3 4 8Sample Output3.531128874149原创 2018-01-16 19:11:44 · 429 阅读 · 0 评论 -
HDU 6354 Everything Has Changed(计算几何)
Description给出一个大圆和nnn个不相交小圆,问该大圆删去与小圆分割部分后的外围周长Input第一行一整数TTT表示用例组数,每组用例首先输入两个整数n,Rn,Rn,R表示小圆个数和大圆半径(大圆圆心在原点),之后nnn行每行输入三个整数x,y,rx,y,rx,y,r表示该小圆的圆心坐标和半径(1≤T≤1000,1≤n≤100,−1000≤x,y≤1000,0<r,...原创 2018-09-06 08:19:51 · 316 阅读 · 0 评论 -
Newcoder 141 I.Expected Size of Random Convex Hull(凸包-Graham扫描法+撒点)
Description给出一个二维平面三角形的三个顶点坐标,问在该三角形内随机选取nnn个点,他们形成的凸包的顶点数量期望值Input输入三个点的横纵坐标xi,yixi,yix_i,y_i以及点数nnn(−109≤xi,yi≤109,3≤n≤10)(−109≤xi,yi≤109,3≤n≤10)(-10^9\le x_i,y_i\le 10^9,3\le n\le 10)Outp...原创 2018-09-16 08:03:09 · 573 阅读 · 0 评论 -
Newcoder 141 J.Distance to Work(二分+计算几何)
Description给出nnn个顶点简单多边形每点坐标,mmm次查询,每次给出圆心坐标,求圆的半径使得该多边形不在圆内部分面积占全部面积的PQPQ\frac{P}{Q}Input第一行输入一整数nnn表示简单多边形点数,之后顺序输入nnn个顶点的横纵坐标xi,yixi,yix_i,y_i,之后输入一整数mmm表示查询,每组查询输入四个整数x0,y0,P,Qx0,y0,P,Qx_0,y...原创 2018-09-16 08:03:39 · 349 阅读 · 3 评论 -
HDU 6398 Pizza Hub(计算几何)
Description给出二维平面三角形的三个顶点坐标,现在要将这个三角形经过任意旋转使得其可以放在一个宽为www的矩形中,问该矩形的高度最小值Input第一行一整数TTT表示用例组数,每组用例输入七个整数x1,y1,x2,y2,x3,y3,wx1,y1,x2,y2,x3,y3,wx_1,y_1,x_2,y_2,x_3,y_3,w分别表示三点坐标和矩形的宽(1≤T≤50000,0≤...原创 2018-09-10 13:27:32 · 365 阅读 · 0 评论 -
Newcoder 140 C.message(上凸包)
Description给出nnn条和yyy轴不平行的直线y=aix+biy=aix+biy=a_ix+b_i,之后查询mmm次,每次给出一条直线y=cix+diy=cix+diy=c_ix+d_i,查询这条直线与之前nnn条直线在一四象限中交点横坐标的最大值,如果和之前nnn条直线在一四象限中没有交点则输出No crossNo crossNo\ crossInput...原创 2018-09-14 17:27:03 · 247 阅读 · 0 评论 -
Newcoder 148 H.Rikka with Ants(计算几何+递归)
Description二维平面上有两只蚂蚁初始在(1,0)(1,0)(1,0)点,有三条直线:1.y=01.y=01.y=0,没有蚂蚁可以越过这条线2.y=abx(a,b&gt;0)2.y=\frac{a}{b}x(a,b&gt;0)2.y=bax(a,b>0),只有第二只蚂蚁可以越过这条线3.y=cdx(c,d&gt;0)3.y=\frac{c}{d}x(...原创 2018-09-27 08:15:41 · 260 阅读 · 0 评论 -
Newcoder 128 D.最短路2(计算几何)
Description假设排球场是个无限大的网格,即对于任意的整数zzz,都有x=zx=zx=z和y=zy=zy=z的直线存在,同学A(Ax,Ay)A(A_x,A_y)A(Ax,Ay)和同学B(Bx,By)B(B_x,B_y)B(Bx,By)站在整点坐标(即Ax,Ay,Bx,ByA_x,A_y,B_x,B_yAx,Ay,Bx,By都是整数)上,这个网格里面,还有另外一条直线HHH...原创 2018-10-06 09:35:00 · 177 阅读 · 0 评论 -
Newcoder 110 B.简单多边形(计算几何)
Description为了让所有选手都感到开心,NowcoderNowcoderNowcoder练习赛总会包含一些非常基本的问题。 比如说:按顺时针或逆时针方向给你一个简单的多边形的顶点坐标,请回答此多边形是顺时针还是逆时针。Input输入包含N+1N + 1N+1行。第一行包含一个整数NNN,表示简单多边形的顶点数。在下面的NNN行中,第iii行包含两个整数xi,yix_i,y_ix...原创 2018-10-17 15:03:56 · 195 阅读 · 0 评论 -
HDU 6300 Triangle Partition(计算几何+构造)
Description给3n3n3n个二维点的坐标,保证无三点共线,要求构造nnn个互不相交的三角形,输出这nnn个三角形顶点编号Input第一行一整数TTT表示用例组数,每组用例首先输入一整数nnn,之后3n3n3n行每行两个整数xi,yixi,yix_i,y_i表示第iii个点的横纵坐标(1≤n≤103,−109≤xi,yi≤109,∑n≤104)(1≤n≤103,−109≤x...原创 2018-09-03 15:42:22 · 249 阅读 · 0 评论 -
HDU 6325 Problem G. Interstellar Travel(上凸包)
Description给出nnn个二维点的坐标(xi,yi)(xi,yi)(x_i,y_i),要求从第一个点出发经过若干点到达最后一个点使得代价最小,从(xi,yi)(xi,yi)(x_i,y_i)点到(xj,yj)(xj,yj)(x_j,y_j)需要满足i<j,xi<xji<j,xi<xjixi⋅yj−xj⋅yixi⋅yj−xj⋅yix_i\cdot y_j-x_j\...原创 2018-09-04 08:27:50 · 237 阅读 · 0 评论 -
GYM 101606 L.Lounge Lizards(计算几何+LIS)
Description给出二维空间nnn个点及其权值,问从起点开始,各个方向的射线上的点构成的序列的严格最长上升子序列长度之和Input 首先输入两个整数x0,y0x0,y0x_0,y_0表示起点坐标,然后输入一整数nnn表示点数,之后nnn行每行三个整数xi,yi,hixi,yi,hix_i,y_i,h_i表示第iii个点的坐标和权值(−106≤x0,y0,xi,yi≤106,1...原创 2018-05-27 20:57:25 · 494 阅读 · 0 评论 -
HDU 6164 Dying Light(计算几何)
Description给出一个nnn个点的凸多边形,每条边都是一面镜子,顶点为(x0,y0),...,(xn−1,yn−1)(x0,y0),...,(xn−1,yn−1)(x_0,y_0),...,(x_{n-1},y_{n-1}),第iii条边起点为(xi,yi)(xi,yi)(x_i,y_i),终点为(x(i+1)%n,y(i+1)%n)(x(i+1)%n,y(i+1)%n)(x_{(i+...原创 2018-02-10 16:27:50 · 397 阅读 · 0 评论 -
HDU 6167 Missile Interception(二分+计算几何)
Description有nnn个导弹,第iii个导弹从(xi,yi)(xi,yi)(x_i,y_i)位置发射,沿(dxi,dyi)(dxi,dyi)(dx_i,dy_i)方向,速度为viviv_i,现在要建立一个导弹防御阵地来拦截这些导弹,从导弹防御阵地可以往任意方向发射速度为VVV的导弹,要求适当选取导弹阵地的位置使得拦截这些导弹的最长用时最短,输出这个最小值Input多组用例,每组...原创 2018-02-10 17:30:18 · 327 阅读 · 0 评论 -
计蒜客 16951 Out-out-control cars(计算几何)
Description给出两个三角形的三个顶点坐标和其速度向量,问两个三角形是否可能相交Input第一行一整数TTT表示用例组数,每组用例输入两行,一行八个整数分别表示三角形三点坐标和速度向量,绝对值均不超过10910910^9Output如果两个三角形可以相交则输出YESYESYES,否则输出NONONOSample Input30 1 2 1 1 3 1 0 ...原创 2018-03-01 20:32:31 · 257 阅读 · 0 评论 -
CodeForces 13 D.Triangles(计算几何)
Description给出二维平面上nnn个红点和mmm个蓝点,保证任意三点不共线,问有多少三角形是由三个红点组成且其内部没有蓝点Input第一行输入两个整数n,mn,mn,m,之后nnn行每行两个整数表示红点坐标,最后mmm行每行两个整数表示蓝点坐标,所有坐标绝对值不超过10910910^9(0≤n,m≤500)(0≤n,m≤500)(0\le n,m\le 500)Output...原创 2018-03-25 15:44:46 · 489 阅读 · 0 评论 -
BZOJ 1007 水平可见直线(计算几何)
Description在xoyxoyxoy直角坐标平面上有nnn条直线L1,L2,...LnL1,L2,...LnL1,L2,...Ln,若在yyy值为正无穷大处往下看,能见到LiLiLi的某个子线段,则称LiLiLi为 可见的,否则LiLiLi为被覆盖的. 例如,对于直线: L1:y=x;L2:y=−x;L3:y=0L1:y=x;L2:y=−x;L3:y=0L1:y=x; L2:y=-...原创 2018-03-25 21:20:43 · 387 阅读 · 0 评论 -
GYM 101755 B.Minimal Area(计算几何)
Description逆时针给出一个凸包的nnn个顶点坐标,问由凸包nnn个顶点中的三个顶点组成的三角形的最小面积,结果乘222输出Input第一行一整数nnn表示凸包顶点个数,之后逆时针给出这nnn个顶点的横纵坐标(xi,yi)(xi,yi)(x_i,y_i)(3≤n≤2⋅105,−109≤xi,yi≤109)(3≤n≤2⋅105,−109≤xi,yi≤109)(3\le n\l...原创 2018-05-01 13:58:31 · 575 阅读 · 0 评论 -
ZOJ 4032 Magic Points(计算几何+构造)
Description给出一整数nnn,考虑以下四条线段上的4n−44n−44n-4个整点:1.0≤x<n,y=00≤x<n,y=00\le x0≤x<n,y=n−10≤x<n,y=n−10\le xx=0,0≤y<nx=0,0≤y<nx=0,0\le yx=n−1,0≤y<nx=n−1,0≤y<nx=n-1,0\le ynnn条不平行于坐标...原创 2018-05-05 17:08:07 · 703 阅读 · 0 评论