[HDU3756]Dome of Circus】的更多相关文章

题目大意: 在一个立体的空间内有n个点(x,y,z),满足z>=0. 现在要你放一个体积尽量小的圆锥,把这些点都包住. 求圆锥的高和底面半径. 思路: 因为圆锥里面是对称的,因此问题很容易可以转化到一个二维平面上,我们只需要将所有点绕着z轴旋转到xOz平面上即可. 考虑不同半径时圆锥的体积,不难发现这是一个关于半径r的下凸函数. 于是我们可以三分求解. 对于当前分出来的两个半径,我们可以O(n)枚举每个点算出高度,然后看一下哪边体积小就继续分哪边. #include<cmath> #in…
容易发现,圆锥体积和点的具体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 <…
不会做,参见别人的程序: /* 底面为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…
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 =…
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…
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…
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…
看我们群里经常有人在问mina心跳问题,虽然俺是菜鸟可是觉得挺简单的啊,就写了个dome,希望大家多多提意见. 俺做过一段时间网络协议.所以觉得挺简单的吧.哎呀,反正技术就那样了没啥难的. 废话不多说了,附上项目,需要的人down下来跑一下吧.maven构建的,只要jar都down下来了,我想跑就没问题.本来不太习惯写注释,还是特意添加了些. mina的好处:自己搜了,俺是菜鸟嘛,也没用几次,就觉得mina的异步io(不用为每个连接创建线程),事件驱动(不懂就搜,我也不太懂反正就是好)还挺好的.…
Java反射机制 public class TestHibernate { @Test public void TestHb(){ try { Class cs = Class.forName("testHibernate.Test1"); //classload 类 Object oj = cs.newInstance(); //通过类NEW一个对象 Method[] mt = cs.getMethods(); //获取所有方法 for (Method method : mt) {…