传送门 题意:给出$N$个点,求其中周长最小的三角形(共线的也计算在内).$N \leq 2 \times 10^5$ 这道题唤起了我对平面最近点对的依稀记忆 考虑平面最近点对的分治,将分界线两边的求解改为求三角形的最小边长即可. 小心坐标乘积爆int 不难但就是想不出 //This code is written by Itst #include<bits/stdc++.h> #define int long long #define ld long double #define eps (…
题面:BJWC2011 最小三角形 \(solution:\) 昨天才学完平面最近点对,今天就要求平面最近的三个点,显然不是巧合. 仔细一思考,我们用来求平面最近点对的方法不就可以用到三个点上吗? 就是按x轴排序,然后不断二分,在向上回溯的同时更新我们的ans,比如当前这个区间,距离中点水平距离超过ans/2的点必然不会更新答案!而且通过与最近点对同理的证明,我们在中间那个水平宽为ans的区间内,竖直距离小于ans/2的点绝对很少(至少我们能接受!),所以我们可以看代码了! \(code:\)…
BZOJ 2458 最小三角形 题面 一个平面上有很多点,求他们中的点组成的周长最小的三角形的周长. 题解 跟平面最近点对差不多,也是先把区间内的点按x坐标从中间分开,递归处理,然后再处理横跨中线的三角形. 如何缩小范围?设左右两个子区间发现的最小周长是d,则与中线距离超过d / 2都没有用了,对于一个点,所有与它距离超过d / 2的点也都没有用. #include <cstdio> #include <cstring> #include <cmath> #includ…
题目: 给出若干个点 求三个点构成的周长最小的三角形的周长(我们认为共线的三点也算三角形) 题解: 可以参考平面最近点对的做法 只不过合并的时候改成枚举三个点更新周长最小值,其他的和最近点对大同小异 2#include<cstdio> #include<algorithm> #include<cstring> #include<cmath> #define N 200010 #define INF 1e20 using namespace std; int…
嘟嘟嘟 这一看就是平面分治的题,所以就想办法往这上面去靠. 关键就是到\(mid\)点的限制距离是什么.就是对于当前区间,所有小于这个距离的点都选出来,参与更新最优解. 假设从左右区间中得到的最优解是\(d\),那么这个限制距离就是\(\frac{d}{2}\).这很显然,如果三角形的一条边比\(\frac{d}{2}\)还大,那么他的周长一定大于\(d\). 因此我们选出所有小于\(\frac{d}{2}\)的点,然后比较暴力的更新答案,具体看代码. #include<cstdio> #in…
类似于平面最近点对,考虑分治,即分别计算分割线两侧的最小三角形再考虑跨过线的三角形. 复杂度证明也是类似的,对于某一个点,在另一侧可能与其构成最小三角形的点在一个d*d/2的矩形内(两边之和大于第三边),并且这些点所组成的三角形周长均不小于d.然而并不清楚这里至多会有多少个点,vfk曾说上界是16,我当然不会证明这个上界也构造不出来有这么多点的方案.找这些点的时候归并就可以做到线性.那么复杂度是O(nlogn)乘上枚举这些点的常数2*16*15/2,看起来根本跑不动不过这个上界肯定是特别松的所以…
求平面上n个点组成的周长最小的三角形. 回忆平面最近点对的做法,找到横坐标的中点mid分治到两边,合并时考虑离mid横坐标不超过当前最小值d的所有点,按y排序后暴力更新答案. 这个题也一样,先分治到两边,然后取出所有离mid横坐标不超过当前最小值/2的点,按y排序后选择三个总坐标不超过当前最小值/2的点更新答案. 按y排序在递归上来时归并,复杂度O(nlogn). #include<cmath> #include<cstdio> #include<cstring> #i…
http://www.lydsy.com/JudgeOnline/problem.php?id=2458 [BeiJing2011]最小三角形 描述 Frisk现在遇到了一个有趣的问题. 平面上有N个点,Frisk想找出周长最小的三角形. 由于点非常多,分布也非常乱,所以Frisk想请你来解决这个问题. 为了减小问题的难度,这里的三角形也包括共线的三点. 输入 第一行包含一个整数N表示点的个数. 接下来N行每行有两个整数,表示这个点的坐标. 输出 输出只有一行,包含一个6位小数,为周长最短的三角…
背景 雍正帝胤祯,生于康熙十七年(1678)是康熙的第四子.康熙61年,45岁的胤祯继承帝位,在位13年,死于圆明园.庙号世宗. 胤祯是在康乾盛世前期--康熙末年社会出现停滞的形式下登上历史舞台的.复杂的社会矛盾,为胤祯提供了施展抱负和才干的机会.他有步骤地进行了多项重大改革,高瞻远瞩,又惟日孜孜,励精图治,十三年中取得了卓有成效的业绩,为后代的乾隆打下了扎实雄厚的基础,使"康乾盛世"在乾隆时期达到了顶峰.他的历史地位,同乃父康熙和乃子乾隆相比,毫不逊色.尽管他猜忌多疑,刻薄寡恩,统治…
Luogu 1429 平面最近点对 题目描述 给定平面上n个点,找出其中的一对点的距离,使得在这n个点的所有点对中,该距离为所有点对中最小的 输入输出格式 输入格式: 第一行:n:2≤n≤200000 接下来n行:每行两个实数:x y,表示一个点的行坐标和列坐标,中间用一个空格隔开. 输出格式: 仅一行,一个实数,表示最短距离,精确到小数点后面4位. 这是一道平面上的分治. 这是一个平面,我们把它分成两半,使x坐标位于最中间的两个点分到左右两侧: 对于同在左侧或同在右侧的点对,我们可以递归处理:…