BZOJ 2876 【NOI2012】 骑行川藏
题目链接:骑行川藏
听说这道题需要一些高数知识
于是膜了一发dalao的题解……然后就没了……
不要吐槽我的精度TAT……eps设太小了就TLE,大了就Wa……我二分的边界是对着数据卡的……
下面贴代码:
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cmath>
#define File(s) freopen(s".in","r",stdin),freopen(s".out","w",stdout)
#define N 10010
#define eps 1e-12 using namespace std;
typedef long double llg; int n;
llg E,s[N],k[N],v1[N],v[N],maxv[N]; void read(llg &x){
double a;
scanf("%lf",&a); x=a;
} bool check(llg x){
llg l,r,mid,now=0;
for(int i=1;i<=n;i++){
l=max(v1[i]+eps,(llg)0.0); r=maxv[i];
while(r-l>=eps){
mid=(r+l)*0.5;
if(x*k[i]*mid*mid*(mid-v1[i])>=-0.5) l=mid;
else r=mid;
}
v[i]=l; now+=k[i]*(l-v1[i])*(l-v1[i])*s[i];
}
return now<=E;
} int main(){
File("bicycling");
scanf("%d",&n); read(E);
for(int i=1;i<=n;i++){
read(s[i]),read(k[i]),read(v1[i]);
if(s[i]<=eps){i--,n--;continue;}
maxv[i]=sqrt(E/k[i]/s[i])+v1[i];
}
llg l=-3,r=-eps,mid;
while(r-l>=eps){
mid=(r+l)*0.5;
if(check(mid)) l=mid;
else r=mid;
}
check(l); llg ans=0;
for(int i=1;i<=n;i++) ans+=s[i]/v[i];
printf("%.9lf",(double)ans);
return 0;
}
BZOJ 2876 【NOI2012】 骑行川藏的更多相关文章
- bzoj 2876: [Noi2012]骑行川藏 拉格朗日数乘
2876: [Noi2012]骑行川藏 Time Limit: 20 Sec Memory Limit: 128 MBSec Special JudgeSubmit: 1033 Solved: ...
- bzoj 2876: [Noi2012]骑行川藏【拉格朗日乘数法+二分】
详见: http://blog.csdn.net/popoqqq/article/details/42366599 http://blog.csdn.net/whzzt/article/details ...
- 2876: [Noi2012]骑行川藏 - BZOJ
Description 蛋蛋非常热衷于挑战自我,今年暑假他准备沿川藏线骑着自行车从成都前往拉萨.川藏线的沿途有着非常美丽的风景,但在这一路上也有着很多的艰难险阻,路况变化多端,而蛋蛋的体力十分有限,因 ...
- 【BZOJ】2876: [Noi2012]骑行川藏
题意 给出\(s_i, k_i, v_i', E\),满足\(\sum_{i=1}^{n} k_i s_i ( v_i - v_i' )^2 \le E, v_i > v_i'\),最小化$ \ ...
- bzoj2876 [Noi2012]骑行川藏
Description 蛋蛋非常热衷于挑战自我,今年暑假他准备沿川藏线骑着自行车从成都前往拉萨.川藏线的沿途有着非常美丽的风景,但在这一路上也有着很多的艰难险阻,路况变化多端,而蛋蛋的体力十分有限,因 ...
- bzoj2876 [NOI2012]骑行川藏(拉格朗日乘数法)
题目描述 蛋蛋非常热衷于挑战自我,今年暑假他准备沿川藏线骑着自行车从成都前往拉萨.川藏线的沿途有着非常美丽的风景,但在这一路上也有着很多的艰难险阻,路况变化多端,而蛋蛋的体力十分有限,因此在每天的骑行 ...
- [BZOJ2876][NOI2012]骑行川藏(拉格朗日乘数法)
题目:http://www.lydsy.com:808/JudgeOnline/problem.php?id=2876 分析:就是要求约束条件下函数的极值,于是拉格朗日乘数列方程,发现化简后的关于vi ...
- NOI2012 骑行川藏
http://www.lydsy.com/JudgeOnline/problem.php?id=2876 表示完全不会...... 还是跪拜大神吧 http://www.cnblogs.com/Ger ...
- BZOJ2876 [Noi2012]骑行川藏 【拉格朗日乘数法】
题目链接 BZOJ 题解 拉格朗日乘数法 拉格朗日乘数法用以求多元函数在约束下的极值 我们设多元函数\(f(x_1,x_2,x_3,\dots,x_n)\) 以及限制\(g(x_1,x_2,x_3,\ ...
- 【bzoj2876】 Noi2012—骑行川藏
http://www.lydsy.com/JudgeOnline/problem.php?id=2876 (题目链接) 题意 在满足约束条件$${\sum_{i=1}^ns_ik_i(v_i-v_i' ...
随机推荐
- Egret资源管理解决方案
关于egret开发H5页游,资源管理和加载的一点看法. 一 多json文件管理 二 资源归类和命名 三 exml文件编写规范 四 资源预加载.分步加载.偷载 五 资源文件group分组 六 ResUt ...
- Jenkins之pipeline流水线配置
使用gitlab监听事件一旦git push自动部署 使用构建后操作 配置完用户构建前一步会自动构建下一个项目 pipeline插件 新建视图 点击run运行
- pandas的drop函数
当你要删除某一行或者某一列时,用drop函数,它不改变原有的df中的数据,而是返回另一个dataframe来存放删除后的数据. 1.命令: df.drop() 删除行:df.drop('apps') ...
- thinkphp中 volist循环的 mod取值的问题
<ul> <volist name="data" id="arr" key="k" mod="2"&g ...
- 知乎live 我的读书经验 总结
https://www.zhihu.com/lives/757587093366009856/messages 碎片化阅读没有意义, 捡硬币捡成富翁 kindle不能全文检索 短篇文章的阅读是否有 ...
- Puppet学习:Augeas的怪问题
今天测试部署Zabbix,本来以前是正常的,今天莫名其妙报错.测试后发现是Augeas出现问题,无论如何都不执行.于是采用调试模式: puppet agent --test --verbose --d ...
- 从LayoutInflater分析XML布局解析成View的树形结构的过程
上一篇博客分析了XML布局怎么载入到Activity上.不了解的能够參考 从setContentView方法分析Android载入布局流程 上一篇博客仅仅是分析了怎么讲XML布局加入到 Activit ...
- editplus的常用快捷键
小编给大家整理了一些软件的快捷键.http://www.downza.cn/soft/187814.html 创建当前行的副本:Ctrl+J 反转选定文本的大小写:Ctrl+K 选择当前行:Ctrl+ ...
- 002-原始jpa以及基本加载过程,基本sql使用
一.概述 1.1.创建 public void createMethod() { EntityManagerFactory factory = Persistence.createEntityMana ...
- sublime text2和3怎么设置修改字体
首先,请打开你的sublime text2或3,点击工具栏中的Preferences 然后打开Settings-User 打开Settings-User之后 如下图 请复制以下代码然后粘贴至花括号内 ...