CodeForces 590B Chip 'n Dale Rescue Rangers
这题可以o(1)推出公式,也可以二分答案+验证。
#include<iostream>
#include<cstring>
#include<cmath>
#include<algorithm>
#include<cstdio>
using namespace std; double X1,X2,Y1,Y2;
double v,t;
double vx,vy,wx,wy; bool check(double mid)
{
double tmpx,tmpy;
if(mid<=t)
{
tmpx=X1+mid*vx;
tmpy=Y1+mid*vy;
double dis=sqrt((X2-tmpx)*(X2-tmpx)+(Y2-tmpy)*(Y2-tmpy));
if(dis/v>mid) return ;
return ;
}
else
{
tmpx=X1+t*vx;
tmpy=Y1+t*vy; tmpx=tmpx+(mid-t)*wx;
tmpy=tmpy+(mid-t)*wy; double dis=sqrt((X2-tmpx)*(X2-tmpx)+(Y2-tmpy)*(Y2-tmpy));
if(dis/v>mid) return ;
return ;
}
} int main()
{
scanf("%lf%lf%lf%lf",&X1,&Y1,&X2,&Y2);
scanf("%lf%lf",&v,&t);
scanf("%lf%lf%lf%lf",&vx,&vy,&wx,&wy); double l=,r=;
double ans;
int t=; while(t--)
{
double mid=(l+r)/2.0; if(check(mid))
{
ans=mid;
r=mid;
}
else l=mid;
}
printf("%.18lf\n",ans);
return ;
}
CodeForces 590B Chip 'n Dale Rescue Rangers的更多相关文章
- Codeforces Round #327 590B Chip 'n Dale Rescue Rangers(等效转换,二分)
t和可到达具有单调性,二分就不多说了.下面说下O(1)的做法,实际上是等效转换,因为答案一定存在,如果在t0之前,那么分解一下 直接按照只有v计算就可以了.反过来如果计算的结果大于t0,那么表示答案在 ...
- codeforces 590B B. Chip 'n Dale Rescue Rangers(二分+计算几何)
题目链接: B. Chip 'n Dale Rescue Rangers time limit per test 1 second memory limit per test 256 megabyte ...
- Codeforces Round #327 (Div. 2) D. Chip 'n Dale Rescue Rangers 二分 物理
D. Chip 'n Dale Rescue Rangers Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/co ...
- Codeforces Round #327 (Div. 1) B. Chip 'n Dale Rescue Rangers 二分
题目链接: 题目 B. Chip 'n Dale Rescue Rangers time limit per test:1 second memory limit per test:256 megab ...
- cf590B Chip 'n Dale Rescue Rangers
B. Chip 'n Dale Rescue Rangers time limit per test 1 second memory limit per test 256 megabytes inpu ...
- codeforces590b//Chip 'n Dale Rescue Rangers//Codeforces Round #327 (Div. 1)
题意:从一点到另一点,前t秒的风向与t秒后风向不同,问到另一点的最短时间 挺难的,做不出来,又参考了别人的代码.先得到终点指向起点的向量,设T秒钟能到.如果T>t则受风1作用t秒,风2作用T-t ...
- (Gym 100685G) Gadget Hackwrench(LCA在线ST)
Gadget Hackwrench time limit per test 2 seconds memory limit per test 64 megabytes input standard in ...
- Codeforces Round #327 (Div2) A~E
CodeForces 591A 题意:在距离为L的两端A,B,相向发射魔法,a(以P1的速度)-->B,A<--b(以P2的速度).假设a-->B,途中相遇,则返回到原点A<- ...
- FC红白机游戏列表(维基百科)
1055个fc游戏列表 日文名 中文译名 英文版名 发行日期 发行商 ドンキーコング 大金刚 Donkey Kong 1983年7月15日 任天堂 ドンキーコングJR. 大金刚Jr. Donkey K ...
随机推荐
- Spring Security教程
原文地址:http://blog.csdn.net/jaune161/article/details/17640071 http://blog.csdn.net/jaune161/article/de ...
- nodejs 命令篇
1.npm init // 生成package.json 2.npm install --save-dev gulp-jslint // 安装gulp-jslint模块,并把模块名和版本保存到pack ...
- 官方windows10升级工具
https://www.microsoft.com/zh-cn/software-download/windows10
- Linux 配置脚本 启动服务
之前在mac安装了php和nginx每次都用一堆命令重启 今天没事情干,心血来潮,自己研究写了一段shell脚本来重启 首先vim /usr/sbin/pn 代码如下 #! /bin/bash php ...
- ProgressDialog
几个方法介绍: 1.setMax() 设置对话框中进度条的最大值. 2.setTile() 设置标题. 3.setProgressStyl() 设置对话框中进度条的样式.例如:环形和水平. 参数: P ...
- http請求瀏覽器的緩存機制
轉載自:http://kb.cnblogs.com/page/73901/ 流程 当资源第一次被访问的时候,HTTP头部如下 (Request-Line) GET /a.html HTTP/1.1 H ...
- One-Way Reform
One-Way Reform time limit per test 2 seconds memory limit per test 256 megabytes input standard inpu ...
- LightOJ 1259 Goldbach`s Conjecture 素数打表
题目大意:求讲一个整数n分解为两个素数的方案数. 题目思路:素数打表,后遍历 1-n/2,寻找方案数,需要注意的是:C/C++中 bool类型占用一个字节,int类型占用4个字节,在素数打表中采用bo ...
- HDU 2489 Minimal Ratio Tree (DFS枚举+最小生成树Prim)
Minimal Ratio Tree Time Limit : 2000/1000ms (Java/Other) Memory Limit : 32768/32768K (Java/Other) ...
- java.lang.NoSuchMethodError: org.objectweb.asm.ClassWriter
在使用实验室的提供的AbstractDAO的时候报错:Exception in thread "main" java.lang.NoSuchMethodError: org.obj ...