Asakura的魔法世界
Font Size:Aa Aa Aa
DescriptionAsakura存在于一个魔法世界中。 有一天,Asakura在一条魔法通道里偷懒,突然接到一个紧急任务,要高速赶往还有一条通道b去。 我们把通道a和b看作两条线段AB和CD。Asakura初始位置在A,如今要高速赶往D。 Asakura在魔法通道a上的速度为v1。在魔法通道b上速度为v2,在除了这两条通道上的其余位置的速度为v3。Asakura最快多长时间才干到达指定位置。 Input多组输入 对于每组測试数据:包括三行 第一行输入四个整数x1,y1,x2,y2.当中(x1,y1)为A。(x2,y2)为B.(-10000<=x1,y1,x2,y2<=10000) 第二行输入四个整数x3,y3,x4,y4.当中(x3,y3)为C,(x4,y4)为D.(-10000<=x3,y3,x4,y4<=10000) 第三行输入三个整数v1,v2,v3.(1<=v1,v2,v3<=50) 每两组測试数据间输入一个空行。 Output输出A到D最短的时间。结果精度到小数点后两位(四舍五入)。 Sample Input0 0 50 50 50 0 50 50 1 1 10 0 50 50 50 0 50 50 3 1 30 0 50 50 50 0 50 50 1 3 1 Sample Output70.71 23.57 63.81
代码例如以下:
#include<cstdio>
#include<cmath>
double dis( double x1, double y1, double x2, double y2)
{
return sqrt ((x1 - x2)*(x1 - x2) + (y1 - y2)*(y1 - y2));
}
double v1, v2, v3, x[4], y[4];
double mindis( double xi, double yi)
{
double i = x[3] - x[2];
double j = y[3] - y[2];
double l = 0, r = 1;
int t;
double tmid, tmidmid;
for (t = 1; t <= 50; t++)
{
double mid = (l + r) / 2;
double midmid = (mid + r) / 2;
double midx = x[2] + mid*i;
double midy = y[2] + mid*j;
double midmidx = x[2] + midmid*i;
double midmidy = y[2] + midmid*j;
tmid = dis(xi, yi, midx, midy) / v3 + dis(midx, midy, x[3], y[3]) / v2;
tmidmid = dis(xi, yi, midmidx, midmidy) / v3 + dis(midmidx, midmidy, x[3], y[3]) / v2;
if (tmid > tmidmid)
l = mid;
else r = midmid;
}
return tmidmid;
}
int main()
{
while (~ scanf ( "%lf %lf %lf %lf" , &x[0], &y[0], &x[1], &y[1]))
{
scanf ( "%lf %lf %lf %lf" , &x[2], &y[2], &x[3], &y[3]);
scanf ( "%lf %lf %lf" , &v1, &v2, &v3);
double i = x[1] - x[0];
double j = y[1] - y[0];
double l = 0, r = 1;
int t;
double tmid, tmidmid;
for (t = 1; t <= 50; t++)
{
double mid = (l + r) / 2;
double midmid = (mid + r) / 2;
double midx = x[0] + mid*i;
double midy = y[0] + mid*j;
double midmidx = x[0] + midmid*i;
double midmidy = y[0] + midmid*j;
tmid = dis(x[0], y[0], midx, midy) / v1 + mindis(midx, midy);
tmidmid = dis(x[0], y[0], midmidx, midmidy) / v1 + mindis(midmidx, midmidy);
if (tmid > tmidmid)
l = mid;
else r = midmid;
}
printf ( "%.2lf\n" , tmid);
}
return 0;
}
|
Asakura的魔法世界相关推荐
- 《假如编程是魔法之零基础看得懂的Python入门教程 》——(三)使用初始魔法跟编程魔法世界打个招呼吧
学习目标 完成显示魔法的使用--输出print 完成传入魔法的使用--输入input 使魔法生效--运行python文件 目录 第一篇:<假如编程是魔法之零基础看得懂的Python入门教程 &g ...
- Blink, 通向哈里·波特的魔法世界
<哈里·波特>的故事里面,魔法界的新闻报纸都是动画的,配图带有动画效果.能够回放新闻的主要场景. 初次看到这个,感觉还挺新鲜的.不过现在,Blink 这样的 App 可以让这个魔法世界的幻 ...
- DASCTF Oct X 吉林工师 欢迎来到魔法世界 部分wp
整理一下自己的思路,存一下题(呜呜呜菜狗就是菜狗wp都看不懂 参考:七月大佬DASCTF Oct X 吉林工师 欢迎来到魔法世界- WP – 七月的摸鱼历程 魔法密文 Writeup| DASCTF ...
- 4123版驱动最新支持《霍格沃茨之遗》,英特尔锐炫显卡带你畅游魔法世界
2023年开年最火的3A大作,那一定是近期上架steam平台的<霍格沃茨之遗>,这款游戏在2020年9月份曝光,游戏根据<哈利·波特>系列书籍内容改编,作为一款开放式的3A大作 ...
- Jenkins 核心概念:探索 Jenkins 魔法世界
Jenkins 魔法世界 Jenkins 核心概念:揭秘 Jenkins 魔法世界 你好 Jenkins 一.持续集成与持续交付 1.1 持续集成 1.2 持续交付 二.Jenkins 架构与核心组件 ...
- 《哈利·波特:霍格沃茨之谜》邀请玩家为魔法世界的圣诞节装饰大厅
12月6日至12日,粉丝可在"和霍格沃茨之谜一起过圣诞"活动中为最喜爱的假日装饰投票 --(美国商业资讯)--Jam City: 人物: Jam City 是一家位于洛杉矶的手机游 ...
- DASCTF Oct X 吉林工师 欢迎来到魔法世界~ WriteUp
本篇文章原文:http://www.7yue.top/dasctf-oct-x-%E5%90%89%E6%9E%97%E5%B7%A5%E5%B8%88-wp/ 雪殇杯好耶,顶碗人大胜利!!! WEB ...
- DASCTF Oct X 吉林工师-欢迎来到魔法世界-misc-魔法少女的迷音(复现)
打开需要密码解压,左边有提示,下面有个atom128 是加密方式 用bing搜索或者google搜索atom128,就能出来解码网站,,,别用百度.. 百度的搜索结果是这些玩意 复制上面密文进行解码 ...
- Python 带你走进哈利波特的魔法世界
Illustrations by Leon movprint ♚ 作者:文建华,小文的数据之旅,数据分析爱好者,不想当码农的伪码农.博客:zhihu.com/c_188462686 先简单介绍一下ji ...
最新文章
- VMware Fusion下的虚拟机绑定地址
- 阿里mysql同步工具otter的docker镜像
- POJ 1944 - Fiber Communications
- boost::fusion::traits::is_view用法的测试程序
- jsp页面调用ajax,在jsp中使用jquery的ajax
- python cursor游标_第二十三天 python中游标的使用
- Hadoop Mapreduce 调优
- react-hooks原理
- 从零基础入门Tensorflow2.0 ----八、43. 自定义流程分布式
- 管家婆系统怎么创建提醒服务器,管家婆辉煌Ⅱ++10.1 -管家婆软件官方网站
- 企业微信自建应用手动授权,获取用户详细信息
- Harfbuzz version too old (1.2.1)
- 一个程序媛的古北水镇游览攻略
- React 接入 Ueditor + xiumi
- 【C51开发应用】基于C51单片机开发的循迹灭火机器人
- 自己动手写数据库系统:容灾恢复原理和容灾恢复日志的设计
- 软件自动化测试简介,1.1 自动化测试简介
- JAVA生成二维码(一)
- Springboot redis多数据源过期监听案例
- Ubuntu上安装tinyproxy搭建HTTP代理服务器