HDU 3756 Dome of Circus】的更多相关文章

不会做,参见别人的程序: /* 底面为xy平面和轴为z轴的圆锥,给定一些点,使得圆锥覆盖所有点并且体积最小 点都可以投射到xz平面,问题转换为确定一条直线(交x,z与正半轴)使得与x的截距r 和与z轴的截距h满足h*r*r最小. 三分,对于确定的h可以找到最佳的r,并且h*r*r的曲线必定只有一个极小值 */ #include <cstdio> #include <cmath> #include <algorithm> using namespace std; stru…
容易发现,圆锥体积和点的具体x.y坐标无关,只与其到z轴的距离sqrt(x*x+y*y)有关. 于是将这些三维的点都投射到二维的xOy平面的第二象限(sqrt(x*x+y*y),z),求个上凸壳,然后在每一点处,圆锥的母线的斜率的取值范围就确定了,发现这个圆锥的体积关于圆锥母线的函数是单峰的,可以三分. 于是枚举凸壳上每一个点,做个三分就行了. #include<cstdio> #include<cmath> #include<algorithm> #define EP…
把所有的点都映射到XOZ这个平面的第一象限内,则这个三维问题可以转化二维问题: 求一条直线,使所有点在这条直线的下方,直线与X轴和Z轴围成的三角形旋转形成的圆锥体积最小. 这样转化之后可以看出直线的临界条件应当是经过其中一点. 三分圆锥半径R,因为要覆盖所有的点,让点(R, 0)与所有点连线,直线与Z轴交点即为H,H取其中最大的那个. #include <cstdio> #include <cstring> #include <cstdlib> #include <…
题目大意: 在一个立体的空间内有n个点(x,y,z),满足z>=0. 现在要你放一个体积尽量小的圆锥,把这些点都包住. 求圆锥的高和底面半径. 思路: 因为圆锥里面是对称的,因此问题很容易可以转化到一个二维平面上,我们只需要将所有点绕着z轴旋转到xOz平面上即可. 考虑不同半径时圆锥的体积,不难发现这是一个关于半径r的下凸函数. 于是我们可以三分求解. 对于当前分出来的两个半径,我们可以O(n)枚举每个点算出高度,然后看一下哪边体积小就继续分哪边. #include<cmath> #in…
很容易就想到把三维转化成了二维,求出点离Z轴的距离,把这个距离当成X坐标,Z轴当Y坐标,然后就变成了求一个直角三角形覆盖这些点 像上一题一样,确定斜率直线的时候,必定是有一点在线上的.于是,可以把直线看成垂直X轴,按角度旋转点即可. 也有二分高度的做法. #include <iostream> #include <cmath> #include <cstdio> #include <algorithm> using namespace std; struct…
https://cn.vjudge.net/problem/UVA-1473 题目 给出一些点,问包含这些点的最小圆锥(要求顶点在y轴,底面圆心在原点)的体积 题解 因为圆锥对称,所以可以把所有点旋转到xOy平面,然后问题转化成求最小的三角形. 于是我们就可以求出上凸包,然后最小的三角形显然过凸包上的一个或两个点 过一个点的时候可以推公式: 设$A(a,b),H(0,y),C(x,0)$ 那么\[\frac{b}{x-a}=\frac{y}{x}\] \[\pi x^2\times y/3 =…
HDU 1000 A + B Problem  I/O HDU 1001 Sum Problem  数学 HDU 1002 A + B Problem II  高精度加法 HDU 1003 Maxsum  贪心 HDU 1004 Let the Balloon Rise  字典树,map HDU 1005 Number Sequence  求数列循环节 HDU 1007 Quoit Design  最近点对 HDU 1008 Elevator  模拟 HDU 1010 Tempter of th…
Dome of Circus Time Limit: 10000/3000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 937    Accepted Submission(s): 420 Special Judge Problem Description A travelling circus faces a tough challenge in designing the…
ACM ICPC 2010–2011, Northeastern European Regional Contest St Petersburg – Barnaul – Tashkent – Tbilisi, November 24, 2010 Problem A. Alignment of CodeProblem B. Binary OperationProblem C. Cactus RevolutionProblem D. Dome of CircusProblem E. Evacuati…
Game of Flying Circus Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=5515 Description The discovery of anti-gravitations technology changed the world. The invention of anti-gravitation shoes (Grav-shoes) enable…