随笔分类 -  ACM--计算几何

摘要:1 //UVALive7461 - Separating Pebbles 判断两个凸包相交 2 3 #include 4 using namespace std; 5 #define LL long long 6 typedef pair pii; 7 const int inf = 0x3f3f3f3f; 8 const int N =1e5+10; 9... 阅读全文
posted @ 2016-10-22 14:32 yyblues 阅读(920) 评论(0) 推荐(0) 编辑
摘要:1 //寻找M S的数量 2017微软秋季校园招聘在线编程笔试 hihocoder 1402 MS Recognition 2 //看了讨论区写了一发 3 //套一下思路: 4 //有一个很简单的做法,一遍bfs找到一个端点,再一遍bfs找到另一个端点,然后把两个端点的中点和整个图形的重心比对一下,区分度非常大。具体来说就是比对一下端点中点到重心的距离,以及两个端点的距离的一半,... 阅读全文
posted @ 2016-10-11 22:50 yyblues 阅读(1364) 评论(0) 推荐(0) 编辑
摘要:1 //二分判定 覆盖问题 BZOJ 1052 2 // 首先确定一个最小矩阵包围所有点,则最优正方形的一个角一定与矩形一个角重合。 3 // 然后枚举每个角,再解决子问题 4 5 #include 6 using namespace std; 7 #define LL long long 8 typedef pair pii; 9 const int inf = 1e9;... 阅读全文
posted @ 2016-10-04 23:26 yyblues 阅读(398) 评论(0) 推荐(0) 编辑
摘要:1 //扫描线矩形周长的并 POJ1177 2 // 我是按x轴 3 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 #include 11 // #include 12 // #include 13 using namespace std; 14 #define LL... 阅读全文
posted @ 2016-09-30 14:25 yyblues 阅读(294) 评论(0) 推荐(0) 编辑
摘要:1 //pick定理:面积=内部整数点数+边上整数点数/2-1 2 // POJ 2954 3 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 using namespace std; 11 #define LL long long 12 typedef pair pii; ... 阅读全文
posted @ 2016-09-22 18:21 yyblues 阅读(629) 评论(0) 推荐(0) 编辑
摘要:1 //凸包稳定性判断:每条边上是否至少有三点 2 // POJ 1228 3 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 using namespace std; 11 #define LL long long 12 typedef pair p... 阅读全文
posted @ 2016-09-22 13:18 yyblues 阅读(357) 评论(0) 推荐(0) 编辑
摘要:1 // 凸包模板 POJ1873 2 // n=15所以可以按位枚举求凸包,再记录数据 3 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 using namespace std; 11 #define LL long long 12 typedef... 阅读全文
posted @ 2016-09-21 21:03 yyblues 阅读(420) 评论(0) 推荐(0) 编辑
摘要:1 // (三角剖分)三角形和矩形的面积交 2016湖南省赛 2 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 using namespace std; 11 12 const int maxn = 555; 13 con... 阅读全文
posted @ 2016-09-20 23:46 yyblues 阅读(633) 评论(0) 推荐(0) 编辑
摘要:1 //三角剖分求多边形面积的交 HDU3060 2 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 using namespace std; 11 12 const int maxn = 555; 13 const int... 阅读全文
posted @ 2016-09-20 23:31 yyblues 阅读(817) 评论(0) 推荐(0) 编辑
摘要:正方形,已知 (x0,y0) 和(x2,y2) 可以根据下列关系求(x1,y1),(x3,y3) x1+x3 = x0+x2; x1-x3 = y2-y0; y1+y3 = y0+y2; y1-y3 = x0-x2; node[0].p[1].x = ((node[0].p[0].x+node[0] 阅读全文
posted @ 2016-09-16 21:37 yyblues 阅读(1610) 评论(0) 推荐(0) 编辑
摘要:1 // 二分+最短路 uvalive 3270 Simplified GSM Network(推荐) 2 // 题意:已知B(1≤B≤50)个信号站和C(1≤C≤50)座城市的坐标,坐标的绝对值不大于1000,每个城市使用最近的信号站。给定R(1≤R≤250)条连接城市线路的描述和Q(1≤Q≤10 阅读全文
posted @ 2016-09-14 23:05 yyblues 阅读(337) 评论(0) 推荐(0) 编辑
摘要:1 // 叉积判断 POJ1696 2 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 using namespace std; 11 #define LL long long 12 typedef pair pii; 13 const double ... 阅读全文
posted @ 2016-09-12 18:11 yyblues 阅读(196) 评论(0) 推荐(0) 编辑
摘要:1 // 线段和矩形相交 POJ 1410 2 3 // #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 using namespace std; 11 #define LL long long 12 typedef pair pi... 阅读全文
posted @ 2016-09-09 16:20 yyblues 阅读(508) 评论(0) 推荐(0) 编辑
摘要:1 // 线段相交 poj 1066 2 // 思路:直接枚举每个端点和终点连成线段,判断和剩下的线段相交个数 3 4 // #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 #include 11 using namespace std; 12 #def... 阅读全文
posted @ 2016-09-09 15:30 yyblues 阅读(197) 评论(0) 推荐(0) 编辑
摘要:1 // 线段相交 POJ 2653 2 // 思路:数据比较水,据说n^2也可以过 3 // 我是每次枚举线段,和最上面的线段比较 4 // O(n*m) 5 6 // #include 7 #include 8 #include 9 #include 10 #include 11 #include 12 #include 13 us... 阅读全文
posted @ 2016-09-09 14:42 yyblues 阅读(165) 评论(0) 推荐(0) 编辑
摘要:1 // 直线相交 POJ 1269 2 3 // #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 using namespace std; 10 #define LL long long 11 typedef pair pii; 12 const double inf = 123... 阅读全文
posted @ 2016-09-09 13:10 yyblues 阅读(226) 评论(0) 推荐(0) 编辑
摘要:1 // 最短路+线段交 POJ 1556 好题 2 // 题意:从(0,5)到(10,5)的最短距离,中间有n堵墙,每堵上有两扇门可以通过 3 // 思路:先存图。直接n^2来暴力,不好写。分成三部分,起点 终点和之间的点:中间点之间:起点和终点的距离 4 // n最大为18所以直接n^3最短路 5 6 7 #include 8 #include 9... 阅读全文
posted @ 2016-09-08 08:59 yyblues 阅读(237) 评论(0) 推荐(0) 编辑
摘要:1 // 判断线段和直线相交 POJ 3304 2 // 思路: 3 // 如果存在一条直线和所有线段相交,那么平移该直线一定可以经过线段上任意两个点,并且和所有线段相交。 4 5 #include 6 #include 7 #include 8 #include 9 #include 10 #include 11 #include 12 #include 1... 阅读全文
posted @ 2016-09-07 21:24 yyblues 阅读(286) 评论(0) 推荐(0) 编辑
摘要:1 // 题意:问你每个区域有多少个点 2 // 思路:数据小可以直接暴力 3 // 也可以二分区间 4 5 #include 6 #include 7 #include 8 #include 9 #include 10 #include 11 #include 12 #include 13 #include 14 using namespace std; ... 阅读全文
posted @ 2016-09-07 09:18 yyblues 阅读(237) 评论(0) 推荐(0) 编辑
摘要:1 // 圆内,求离圆心最远的整数点 hiho一下第111周 Farthest Point 2 // 思路:直接暴力绝对T 3 // 先确定x范围,每个x范围内,离圆心最远的点一定是y轴两端的点。枚举x的范围,再比较y 4 // O(n) 5 6 #include 7 using namespace std; 8 #define LL long long 9 const d... 阅读全文
posted @ 2016-09-06 23:26 yyblues 阅读(339) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示