Live2d Test Env

随笔分类 -  数学---几何

摘要:pro:给定警察的射击位置,设计方向,敌人的位置,敌人的头部半径,问子弹是否可以射到头部。 sol:即问头部中点到子弹射线的距离是否小于等于头部半径。 和二维的点到直线一样的操作。 det/dot; 用平行四边形面积/底。 那么唯一的问题就是三维向量的det怎么求。 如图: 由于是射线,还要判定是否 阅读全文
posted @ 2019-04-10 16:09 nimphy 阅读(495) 评论(0) 推荐(0)
摘要:pro:给定一个蛋糕,一个矩阵房子,一只蚂蚁。最开始三者两两相离,问蚂蚁触摸到蛋糕后再触摸矩阵的最短距离。结果保留两位小数,坐标的绝对值<1e4; sol:由于坐标不大,而且精度要求不高,不难想到可以暴力一点,直接分割圆。 假设分100000份,得到每个点到蚂蚁和矩阵的距离和,更新答案。 (虽然我想 阅读全文
posted @ 2019-04-10 14:34 nimphy 阅读(218) 评论(0) 推荐(0)
摘要:pro:A的监视区域是一个多边形。 如果A的监视区的内满足到A的距离到不超过到B的距离的K倍的面积大小。K<1 sol:高中几何体经验告诉我们满足题意的区域是个圆,那么就是求圆与多边形的交。 阅读全文
posted @ 2019-04-09 22:08 nimphy 阅读(213) 评论(0) 推荐(0)
摘要:pro:给定一枚蛋糕,蛋糕上某个位置有个草莓,寿星在上面切了N刀,最后寿星会吃含有草莓的那一块蛋糕,问他的蛋糕占总蛋糕的面积比。 sol:显然需要半平面交求含有蛋糕的那一块,然后有圆弧,不太方便求交。 所以我们可以直线构成的边界,求出平面交; 然后用这个多边形去和圆求交。 (百度了一下很多人都没过, 阅读全文
posted @ 2019-04-09 21:45 nimphy 阅读(276) 评论(0) 推荐(0)
摘要:pro:飞行员去轰炸一个小岛,给出炸弹落地点的位置信息,以及轰炸半径;按顺时针或者逆时针给出小岛的边界点。 求被轰炸的小岛面积。 sol:即是求圆和多边形的面积交。 (只会套板子的我改头换面,先理解然后手打一遍。 首先,我们还是用三角剖分多边形,求“有向面积”,有向面积可以避免凹多边形存在的情况,或 阅读全文
posted @ 2019-04-09 16:28 nimphy 阅读(580) 评论(0) 推荐(0)
摘要:pro:给定凸多边形,求凸多边形内的点到最近边界的最远距离。 sol:显然是二分一个圆,使得圆和凸多边形不相交,但是这样很难实现。 由于是凸多边形,我们可以把二分圆转化为二分凸多边形的移动。 如果每一边向左移动Mid后,任然存在“核”,则表示存在一点合法。 直线移动:移动起点即可,方向不变。 阅读全文
posted @ 2019-04-09 10:41 nimphy 阅读(218) 评论(0) 推荐(0)
摘要:题目难度较难,但挺有营养的。慢慢补。 A .ASCII Addition pro:用一定的形式表示1到9,让你计算加法。 sol:模拟。 solved by fzl; #include<bits/stdc++.h> #define rep(i,a,b) for(int i=a;i<=b;i++) u 阅读全文
posted @ 2019-04-08 16:22 nimphy 阅读(463) 评论(1) 推荐(1)
摘要:pro:顺时针给定多边形,问是否可以放一个监控,可以监控到所有地方,即问是否存在多边形的核。 此题如果两点在同一边界上(且没有被隔段),也可以相互看到。 sol:求多边形是否有核。先给直线按角度排序,然后增量法即可,复杂度O(NlogN)。 阅读全文
posted @ 2019-04-08 14:05 nimphy 阅读(218) 评论(0) 推荐(0)
摘要:A .Artwork pro:给定N*M的白色格子,然后Q次黑棒,输出每次加黑棒后白色连通块的数量。(N,M<1e3, Q<1e4) sol:倒着离线做,并查集即可。 A .Artwork pro:给定N*M的白色格子,然后Q次黑棒,输出每次加黑棒后白色连通块的数量。(N,M<1e3, Q<1e4) 阅读全文
posted @ 2019-04-04 19:20 nimphy 阅读(315) 评论(0) 推荐(0)
摘要:前面的两场感觉质量不高,就没写题解 A .Around the Track pro:给定内多边形A和外多边形B,求最短路径,蛮子路径再A之外,B之内。 sol:如果没有B,就是求凸包,有了B,我们在做凸包的时候,有形如“a-b-c,b在内部,删去b,连接a-c的操作”,如果a-c和B不相交,直接删去 阅读全文
posted @ 2019-03-09 13:54 nimphy 阅读(637) 评论(0) 推荐(1)
摘要:学习了“叙利亚”这个单词;比较温和的一场;几何的板子eps太小了,坑了几发。 A .Hello SCPC 2018! 题意:给定一个排列,问它是否满足,前面4个是有序的,而且前面4个比后面的都小。 思路:数据比较小,可以暴力,也可以用前面4个的最大值和后面的数字的最小值比较。 #include<bi 阅读全文
posted @ 2019-02-12 16:46 nimphy 阅读(715) 评论(0) 推荐(0)
摘要:B .Counting Inversion 题意:给定L,R,求这个区间的逆序对数之和。(L,R<1e15) 思路:一看这个范围就知道是数位DP。 只是维护的东西稍微多一点,需要记录后面的各种数字的个数cnt,以及逆序对和sum,以及出现了多少种后缀num。 那么枚举到当前位时,假设为i ,那么su 阅读全文
posted @ 2019-02-09 16:23 nimphy 阅读(584) 评论(0) 推荐(0)
摘要:A .Abstract Art 题意:求多个多边形的面积并。 思路:模板题。 #include<bits/stdc++.h> using namespace std; typedef long long ll; const double inf=1e200; const double eps=1e- 阅读全文
posted @ 2019-02-07 16:32 nimphy 阅读(525) 评论(0) 推荐(0)
摘要:A .A Prize No One Can Win 题意:给定N,S,你要从N个数中选最多是数,使得任意两个之和不大于S。 思路:排序,然后贪心的选即可。 #include<bits/stdc++.h> #define ll long long #define rep(i,a,b) for(int 阅读全文
posted @ 2019-02-06 16:04 nimphy 阅读(832) 评论(0) 推荐(0)
摘要:B .Battle Royale 题意:给你两个点A,B,以及一个圆S,保证两个点在圆外,且其连线与圆相交,求两点间最短距离。 思路:显然是要分别与圆相切,然后在圆弧想走,直到相交。 那么ans=与圆相交的直线距离+圆弧上的距离; 前者不难求。 后者的话有些抽象,因为不知道怎么取固定角度,但是如果想 阅读全文
posted @ 2019-01-31 20:40 nimphy 阅读(808) 评论(0) 推荐(0)
摘要:Alice is interesting in computation geometry problem recently. She found a interesting problem and solved it easily. Now she will give this problem to 阅读全文
posted @ 2018-09-24 21:45 nimphy 阅读(850) 评论(0) 推荐(0)
摘要:You are given n points on Cartesian plane. Every point is a lattice point (i. e. both of its coordinates are integers), and all points are distinct. Y 阅读全文
posted @ 2018-09-11 16:25 nimphy 阅读(537) 评论(0) 推荐(0)
摘要:Little Petya likes to draw. He drew N red and M blue points on the plane in such a way that no three points lie on the same line. Now he wonders what 阅读全文
posted @ 2018-09-11 11:38 nimphy 阅读(347) 评论(0) 推荐(0)
摘要:题意:给定N个点,用矩形将所有点覆盖,要求矩形宽度最小。 思路:裸体,旋转卡壳去rotate即可。 最远距离是点到点;宽度是点到边。 阅读全文
posted @ 2018-09-10 22:07 nimphy 阅读(503) 评论(0) 推荐(0)
摘要:You are given n points with integer coordinates on the plane. Points are given in a way such that there is no triangle, formed by any three of these n 阅读全文
posted @ 2018-09-10 21:01 nimphy 阅读(370) 评论(0) 推荐(0)