HDOJ(2438)几何里的三分
Turn the corner
http://acm.hdu.edu.cn/showproblem.php?pid=2438
题目:一辆车能否在一个路口拐弯,看图就很明白啦。
算法:见下图,只要求出图中明黄色线段的最大值小于y就可以了。一图抵千言。

#include <iostream>
#include <cmath>
using namespace std;
double x,y,l,d; double f_angle(double angle)
{
return l*cos(angle)+d/sin(angle)-x/tan(angle);
} int main()
{
double mid1,mid2,low,high;
while(cin>>x>>y>>l>>d)
{
low=0.0;
high=acos(-1.0)/;
while(high-low>=1.0e-6)
{
//三分法求极值
mid1=low+(high-low)/3.0;
mid2=high-(high-low)/3.0;
if(f_angle(mid1)<=f_angle(mid2))
low=mid1;
else
high=mid2;
}
if(f_angle(low)<y)
cout<<"yes"<<endl;
else
cout<<"no"<<endl;
}
return ;
}
二分查找所面向的搜索序列的要求是:具有单调性(不一定严格单调);
与二分查找不同的是,三分法所面向的搜索序列的要求是:序列为一个凸性函数(包括上凸和下凸)。
HDOJ(2438)几何里的三分的更多相关文章
- HDU 2438 Turn the corner(三分查找)
托一个学弟的福,学了一下他的最简便三分写法,然后找了一道三分的题验证了下,AC了一题,写法确实方便,还是我太弱了,漫漫AC路!各路大神,以后你们有啥好的简便写法可以在博客下方留个言或私信我,谢谢了! ...
- hdu 2438 Turn the corner [ 三分 ]
传送门 Turn the corner Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Othe ...
- [zoj3593]扩展欧几里得+三分
题意:给一个数A,有6种操作,+a,-a,+b,-b,+(a+b),-(a+b),每次选择一种,用最少的次数变成B. 思路:由于不同的操作先后顺序对最后的结果没有影响,并且加一个数与减一个相同的数不能 ...
- BZOJ2800 [Poi2012]Leveling Ground 【扩展欧几里得 + 三分 + 堆】
题目链接 BZOJ2800 题解 区间加极难操作,差分之后可转化为两点一加一减 那么现在问题就将每个点暂时独立开来 先判定每个点是否被\((A,B)\)整除,否则无解 之后我们先将\(A,B\)化为互 ...
- 什么是 kNN 算法?
学习 machine learning 的最低要求是什么? 我发觉要求可以很低,甚至初中程度已经可以. 首先要学习一点 Python 编程,譬如这两本小孩子用的书:[1][2]便可. 数学方面 ...
- 地理数据库的类型geodatabase类型
地理数据库的类型geodatabase类型 地理数据库是用于保存数据集集合的“容器”.有以下三种类型: 文件地理数据库 - 在文件系统中以文件夹形式存储.每个数据集都以文件形式保存,该文件大小最多可扩 ...
- 数往知来C#之 String 集合 深拷与浅拷 序列化<五>
C# 基础常用string方法篇 复习. 1.引用类型与值类型 -->文件的复制与快捷方式的复制 2.垃圾回收 3.静态与非静态 -->如何定义静态成员与静态类 --> ...
- Windows Phone 之手势识别(Flick)
1. 引入dll (silverlight for wndows phone toolkit) 2.引入命名空间 01.xmlns:toolkit="clr-namespace:Micros ...
- [google面试CTCI] 1-8.判断子字符串
[字符串与数组] Q:Assume you have a method isSubstring which checks if one word is a substring of another G ...
随机推荐
- 为模版设计师而生的Twig(上)-Twig使用指南
原文地址:http://my.oschina.net/veekit/blog/268828 1. 概要 模板是一个简单的文本文件.它可以生成任何基于文本的格式(HTML.XML.CSV等).它不具有特 ...
- 前端 动态表单提交(post、put)
第一步:form表单定义统一属性 <input type="text" class="form-value" /> 第二步:获取所有值 var fo ...
- C#动态webservice调用接口 (JAVA,C#)
C#动态webservice调用接口 using System; using System.Collections; using System.IO; using System.Net; using ...
- svn 权限配置
svnserve.conf开启权限 auth中以下设置 重启SVN服务
- C# 随机红包算法
static void Main(string[] args) { ; ; double minAmount = 0.01; Random r = new Random(); ; i < num ...
- 单点登录SSO
转载自 http://www.blogjava.net/xcp/archive/2010/04/13/318125.html 摘要:单点登录(SSO)的技术被越来越广泛地运用到各个领域的软件系统当 ...
- PICT安装与使用
一.PICT简介 PICT工具是在微软公司推出的一款成对组合的命令行生成工具,下载地址http://download.microsoft.com/download/f/5/5/f55484df-849 ...
- Codeforces Round #381 (Div. 2)C. Alyona and mex(思维)
C. Alyona and mex Problem Description: Alyona's mother wants to present an array of n non-negative i ...
- eclipse 断点使用深入技能
原文:http://blog.jobbole.com/26435/ 摘要:调试不仅可以查找到应用程序缺陷所在,还可以解决缺陷.对于Java程序员来说,他们不仅要学会如何在Eclipse里面开发像样的程 ...
- LogBack,升级版的log4J
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE log4j:configuration SYS ...