题目传送门 题意:找一条直线,使得其余的点都在直线的同一侧,而且使得到直线的平均距离最短. 分析:训练指南P274,先求凸包,如果每条边都算一边的话,是O (n ^ 2),然而根据公式知直线一般式为Ax + By + C = 0.点(x0, y0)到直线的距离为:fabs(Ax0+By0+C)/sqrt(A*A+B*B). 所以只要先求出x的和以及y的和,能在O (1)计算所有距离和. 两点式直线方程p1 (x1, y1),p2 (x2, y2)转换成一般式直线方程:A = y1 - y2, B…
Airport [题目链接]Airport [题目类型]凸包 &题解: 蓝书274页,要想到解析几何来降低复杂度,还用到点到直线的距离公式,之后向想到预处理x,y坐标之和,就可以O(1)查到距离,还是很厉害的. 但我还是不知道为什么最后输出ans要除n?希望大佬看见可以评论告诉我一下. &代码: #include <iostream> #include <cstdio> #include <algorithm> #include <cmath>…
题意:给你n[1,10000]个点,求出一条直线,让所有的点都在都在直线的一侧并且到直线的距离总和最小,输出最小平均值(最小值除以点数) 题解:根据题意可以知道任意角度画一条直线(所有点都在一边),然后平移去过某个点,再根据此点进行旋转直到过另一个点,这样直线就被两个点确定了 而这样的直线一定是这些点形成的凸包的边,接着就是求出凸包后枚举每条凸包的边,再根据这条边找到所有点到这条边的距离总和 但是直接找会超时,那么我们用方程优化: 已知直线上的两点P1(X1,Y1) P2(X2,Y2), P1…
题目链接:https://cn.vjudge.net/problem/UVA-11168 题意: 给出平面上的n个点,求一条直线,使得所有的点在该直线的同一侧(可以在该直线上),并且所有点到该直线的距离和最小,输出该距离除以n: 题解: 显然最好能让越多的点在这条直线上就越好,但又要所有点满足在同侧,则显然要选取某条凸包边界所在直线作为ans: 求出凸包后,遍历每条凸包边,求出所有点到这条直线的距离和,找到最小的即可. AC代码: #include<bits/stdc++.h> #define…
题目传送门 题意:判断一些点的凸包能否唯一确定 分析:如果凸包边上没有其他点,那么边想象成橡皮筋,可以往外拖动,这不是唯一确定的.还有求凸包的点数<=2的情况一定不能确定. /************************************************ * Author :Running_Time * Created Time :2015/11/4 星期三 10:24:45 * File Name :POJ_1228.cpp *************************…
题目传送门 题意:给了四个点,判断能构成什么图形,有优先规则 分析:正方形和矩形按照点积为0和长度判断,菱形和平行四边形按向量相等和长度判断,梯形按照叉积为0判平行.因为四个点是任意给出的,首先要进行凸包排序,可能会有三点共线的情况. /************************************************ * Author :Running_Time * Created Time :2015/10/22 星期四 13:27:33 * File Name :UVA_11…
凸包+一点直线的知识: #include <cstdio> #include <cmath> #include <cstring> #include <algorithm> #include <vector> #define eps 1e-9 using namespace std; ); int dcmp(double x) { : (x > ? : -); } struct Point { double x; double y; Poi…
题目传送门 题意:给了长宽比例,操场一圈400米,问原来长宽的长度 分析:推出公式 /************************************************ * Author :Running_Time * Created Time :2015/10/22 星期四 15:19:59 * File Name :UVA_11646.cpp ************************************************/ #include <cstdio>…
题目传送门 题意:三角形三等分点连线组成的三角形面积 分析:入门题,先求三等分点,再求交点,最后求面积.还可以用梅涅劳斯定理来做 /************************************************ * Author :Running_Time * Created Time :2015/10/22 星期四 12:55:27 * File Name :UVA_11437.cpp *********************************************…
题目传送门 题意:莫雷定理,求三个点的坐标 分析:训练指南P259,用到了求角度,向量旋转,求射线交点 /************************************************ * Author :Running_Time * Created Time :2015/10/21 星期三 15:56:27 * File Name :UVA_11178.cpp ************************************************/ #include…