湘潭大学 Hurry Up 三分,求凹函数的最小值问题
题目来源:
http://202.197.224.59/OnlineJudge2/index.php/Problem/read/id/1175
分析:
起点和终点, 从起点跑到x轴,然后再从x轴某处到终点坐出租车,求最短时间,此函数为 f(x)。 然后再和直接从起点到终点的时间比较,求最小。
由此,我们知道 f(x)是一个 凹函数,用三分的方法。
代码如下:
const double EPS=1e-9; double xs,ys,xe,ye,vr,vt; double f(double x) { return sqrt( (xs-x)*(xs-x) + ys*ys ) / vr + sqrt( (x-xe)*(x-xe) + ye*ye ) / vt; } //三分 对凹(凸)函数判断最小(大)值,此题是求最小值。 //不要求左l右r值的大小比较,即(L<R 或 L>=R)都可 double tri_search(){ double Mid , Midmid,L,R; L= xs; R=xe; while( fabs(L-R) > EPS ){ // 由于L ,R没有要求谁大谁小,故求的绝对值 Mid=(L+R)*0.5; Midmid=(Mid+R)*0.5; if(f(Mid)<= f(Midmid) ) R=Midmid; else L=Mid; } return (L+R)*0.5; } int main(){ int t; cin>>t; while(t--){ cin>>xs>>ys>>xe>>ye>>vr>>vt; double ans=sqrt( (xs-xe)*(xs-xe) + (ys-ye)*(ys-ye)) / vr; double x=tri_search(); ans=min(ans, f(x)); printf("%.2lf\n",ans); } return 0 ; }
湘潭大学 Hurry Up 三分,求凹函数的最小值问题相关推荐
- zoj 3386 Trick or Treat 三分 求最大值的 最小值
题目来源: http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=3963 题意: 给定 N 个不同的点, 求在x轴上的 一点, 使 ...
- vector 查找最大最小值,且求最大值或者最小值在容器中的位置
文章目录 前言 一 vector 查找最大最小值,及其位置 前言 在项目中经常会用到对vector容器中的数据求最大值或者最小值,这里简单总结下vector的常用方法,方便后续快速查找回顾. 一 ve ...
- hihoCoder #1142 : 三分求极值
#1142 : 三分·三分求极值 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 这一次我们就简单一点了,题目在此: 在直角坐标系中有一条抛物线y=ax^2+bx+c和一 ...
- Algorithm:C++/python语言实现之求旋转数组最小值、求零子数组、求最长公共子序列和最长公共子串、求LCS与字符串编辑距离
Algorithm:C++/python语言实现之求旋转数组最小值.求零子数组.求最长公共子序列和最长公共子串.求LCS与字符串编辑距离 目录 一.求旋转数组最小值 1.分析问题 2.解决思路 二.求 ...
- Console-算法[]-数组求最大值和最小值(只能遍历一次)
ylbtech-Arithmetic:Console-算法[]-数组求最大值和最小值(只能遍历一次) 1.A,Demo(案例) Console-算法[]-数组求最大值和最小值(只能遍历一次) 1.B, ...
- POJ 3264 Balanced Lineup【线段树区间查询求最大值和最小值】
Balanced Lineup Time Limit: 5000MS Memory Limit: 65536K Total Submissions: 53703 Accepted: 25237 ...
- Spark入门(十六)之分组求TOP N最小值
一.分组求TOP N最小值 计算文本里面的每个key分组求TOP N最小值,输出结果. 二.maven设置 <?xml version="1.0" encoding=&quo ...
- python怎么用for循环找出最大值_用for循环语句写一个在输入的十个数字中求最大和最小值的python程序应该怎么写?...
"在输入的十个数字中求最大和最小值的 python 代码"这个需求,在不同时间来看,解题思路不同,所需要的 python 知识点不同. 作为萌新的我,为此特意整理了 3 种解法,以 ...
- 数组小案例(求数组最大最小值、反转数组中元素、指定元素第一次出现的索引)
数组小案例(求数组最大最小值.反转数组中元素.指定元素第一次出现的索引) 练习1 数组最值的求取 定一个数组,求数组中的最大值和最小值 public class Demo01 {public stat ...
- (1~2):C实现数组求和,求平均值,求最大值,最小值
1.求和.求平均值 #include<stdio.h>int main() {int arr[5]={1,2,3,4,5};int sum=0;for(int i=0;i<5;i++ ...
最新文章
- 普元EOS开发积累第一篇(常见错误解决方法) 持续更新
- 有关豆豆成长里程碑事件1
- C# Job System
- 前端学习(3181):ant-design的button介绍
- OJ1028: I love 闰年!
- 手把手教你编写Logstash插件
- Spring Security Ajax 被拦截
- 记录一次苏宁电商延保服务的体验
- Python 自定义模块
- Ubuntu16.04 安装火狐浏览器(中国版)
- 树莓派 引脚及接口图 AV接口顺序
- vue实现微信分享链接 生成卡片
- wps之word设置页眉
- Ques核心思想——CSS Namespace
- python爬取b站所有视频_如何快速爬取B站全站视频信息
- Spring中实现HTTP缓存
- 操作系统 存储管理实验报告
- 关于国际论文中,国内外人名顺序的问题
- this.$watch(),this.$set(),this.$nextTick()={})
- 无线通信安全作业1-无线通信安全最新消息
热门文章
- C语言字符串分割 trimmed simplified split
- Python如何批量把图片地址输入到浏览器上
- fmt/core.h:1711:3: error: static assertion failed: Cannot format an argument.解决方案
- 致远OA A8 漏洞综合工具
- C1 驾驶证考试科目二考试心得
- 曲师大教务系统服务器,曲阜师范大学掌上教务
- 1853: [Scoi2010]幸运数字[容斥原理]
- 想要感受三星S8屏幕的震撼 先过APP适配这道坎
- 三星S8原生android8.0,三星S8惧怕的全面屏机皇杀到,原生安卓8.0系统
- 三星s8文档有html,三星s8有哪些特殊功能 这些绝对能让你羡慕