hdu 2899 hdu 3400 三分/几何
hdu2899 ;
水提,直接三分,事实上求导后二分也能够。
#include<iostream>
#include<cstdio>
using namespace std;
double y;
double inline f( long double x)
{
return 6*x*x*x*x*x*x*x+8*x*x*x*x*x*x+7*x*x*x+5*x*x-y*x;
}
int main()
{
int T;scanf("%d",&T);
while(T--)
{
cin>>y;
double l,r,m1,m2;
l=0;r=100;
while(r-l>0.000001)
{
m1=l+(r-l)/3;
m2=r-(r-l)/3;
if(f(m1)<f(m2))
{
r=m2;
}
else
{
l=m1;
}
}
printf("%.4lf\n",f(l));
}
return 0;
}
hdu3400 有俩个未知。第一次确定。则第二个函数式先见后增的,而第二个反馈出最小值后,第一个未知也是先见后增的,所以三分套三分(九分??呵呵~)
#include<iostream>
#include<cstdio>
#include<cmath>
using namespace std;
struct xy
{
double x,y;
};
double inline dis( xy a,xy b)
{
return sqrt((a.x-b.x)*(a.x-b.x)+(a.y-b.y)*(a.y-b.y));
}
xy A,B,C,D; int p,q,r;
double inline s(xy a ,xy b)
{
return dis(a,A)/p+dis(a,b)/r+dis(b,D)/q;
}
double f(xy t)
{
xy l,r,m1,m2;
l=C;r=D;
while(dis(r,l)>0.0001)
{
m1.x=l.x+(r.x-l.x)/3;
m1.y=l.y+(r.y-l.y)/3;
m2.x=r.x-(r.x-l.x)/3;
m2.y=r.y-(r.y-l.y)/3;
if(s(t,m1)<s(t,m2))
{
r=m2;
}
else
{
l=m1;
}
}
return s(t,l);
} int main()
{
int T;scanf("%d",&T);
while(T--)
{
scanf("%lf%lf%lf%lf%lf%lf%lf%lf",&A.x,&A.y,&B.x,&B.y,&C.x,&C.y,&D.x,&D.y);
scanf("%d%d%d",&p,&q,&r);
xy l,r,m1,m2;
l=A;r=B;
while(dis(r,l)>0.0001)
{
m1.x=l.x+(r.x-l.x)/3;
m1.y=l.y+(r.y-l.y)/3;
m2.x=r.x-(r.x-l.x)/3;
m2.y=r.y-(r.y-l.y)/3;
if(f(m1)<f(m2))
{
r=m2;
}
else
{
l=m1;
}
}
printf("%.2lf\n",f(l));
}
return 0;
}
hdu 2899 hdu 3400 三分/几何的更多相关文章
- hdu 2899 Strange fuction——模拟退火
题目:http://acm.hdu.edu.cn/showproblem.php?pid=2899 还可三分.不过只写了模拟退火. #include<iostream> #include& ...
- HDU - 2222,HDU - 2896,HDU - 3065,ZOJ - 3430 AC自动机求文本串和模式串信息(模板题)
最近正在学AC自动机,按照惯例需要刷一套kuangbin的AC自动机专题巩固 在网上看过很多模板,感觉kuangbin大神的模板最为简洁,于是就选择了用kuangbin大神的模板. AC自动机其实就是 ...
- ACM : HDU 2899 Strange fuction 解题报告 -二分、三分
Strange fuction Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Tot ...
- HDU 2899 Strange fuction 【三分】
三分可以用来求单峰函数的极值. 首先对一个函数要使用三分时,必须确保该函数在范围内是单峰的. 又因为凸函数必定是单峰的. 证明一个函数是凸函数的方法: 所以就变成证明该函数的一阶导数是否单调递增,或者 ...
- HDU 2899 三分
我们对这个函数求二阶导数,发现他的二阶导数是恒大于0的,那么他的导数是单调的,且在某时刻为0,那么这时的x值就是极值处的x值,其实题目说了,有最小值,那么我们三分水过去就好了. 反思:精度不够,因为是 ...
- nyoj 1029/hdu 3714 Error Curves 三分
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3714 懂了三分思想和F(x)函数的单调性质,这题也就是水题了 #include "stdio ...
- hdu 2899 Strange fuction
http://acm.hdu.edu.cn/showproblem.php?pid=2899 Strange fuction Time Limit: 2000/1000 MS (Java/Others ...
- hdu 3714 Error Curves(三分)
http://acm.hdu.edu.cn/showproblem.php?pid=3714 [题意]: 题目意思看了很久很久,简单地说就是给你n个二次函数,定义域为[0,1000], 求x在定义域中 ...
- (二分搜索 )Strange fuction -- HDU -- 2899
链接: http://acm.hdu.edu.cn/showproblem.php?pid=2899 Time Limit: 2000/1000 MS (Java/Others) Memory ...
随机推荐
- HDU 2112 HDU Today(Dijkstra)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2112 HDU Today Time Limit: 15000/5000 MS (Java/Others ...
- counting objects in class
參考文献:pgno=1">http://www.drdobbs.com/cpp/counting-objects-in-c/184403484? pgno=1
- HDU2844_Coins【多重背包】【二进制优化】
Coins Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Subm ...
- python语言学习7——数据类型和变量
整数 python可以处理任意大小的整数,包括负整数,在程序中的表示方法和数学上的写法一样 计算机由于使用二进制,有时候采用十六进制表示整数比较方便,十六进制数用0x前缀 浮点数 简单的小数就直接用小 ...
- loj1336(数学)
传送门:Sigma Function 题意:定义f(n)为n的约数之和,求[1,n]中f值为偶数的数的个数. 分析:由题目给定公式可知,若f(n)为奇数,则相乘的每一项都必须为奇数. 每一项为奇数的条 ...
- Heritrix与Nutch对比
Nutch 开发语言:Java http://lucene.apache.org/nutch/ 简介: Apache的子项目之一,属于Lucene项目下的子项目. Nutch是一个基于Lucene,类 ...
- 30岁生日,媳妇赏的,U-BOAT手表一枚-数字尾巴
http://bbs.dgtle.com/thread-139611-1-1.html
- poj1849(求树的直径)
题目链接:http://poj.org/problem?id=1849 题意:有一颗n个结点的带权的无向树, 在s结点放两个机器人, 这两个机器人会把树的每条边都走一遍, 但是最后机器人不要求回到出发 ...
- mahout源码KMeansDriver分析之五CIMapper
接上文重点分析map操作: Vector probabilities = classifier.classify(value.get());// 第一行 Vector selections = pol ...
- shell命令批量杀死MySQL连接进程
(1)将全部的MySQL连接进程杀掉 for i in `mysql -uroot -pzhangyun -Bse "show processlist" | grep -v &qu ...