E - Straight Shot Gym - 101652R

Posted yewanting

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了E - Straight Shot Gym - 101652R相关的知识,希望对你有一定的参考价值。

技术图片

技术图片

技术图片

技术图片

解题思路:这道题的题意就是给你n,总距离X,速度v;以及n组数据:人行道的左端点和右端点,以及人行道的速度(竖直方向),如果从(0,0)到(X,0)的时间小于2X/v,则输出其时间,否则输出”Too hard“;

需要一定的推导和简单物理知识

代码如下:

 1 #include<iostream>
 2 #include<stdio.h>
 3 #include<cmath>
 4 using namespace std;
 5 
 6 int  n , X ;
 7 double v;
 8 int l , r ,x ;
 9 double vy ,vyy;
10 double vx ,vxx;
11 double ans1 ;
12 double ans2 = 0 ;
13 int flag = 0;
14 double time = 0;
15 double yy;
16 int main()
17 {
18     scanf("%d%d%lf",&n,&X,&v);
19     ans1 = 2*X/v;
20     while(n--)
21     {
22         scanf("%d%d%lf",&l,&r,&vy);
23         x = l - r;
24         yy += (l-r)*vy;
25     }
26     vyy = -yy/X;
27     if(fabs(vyy)>=v)
28     {
29         flag = 1;
30     }
31     vxx = sqrt(v*v - vyy*vyy);
32     time = X/vxx;
33     if(time>=ans1)
34     {
35         flag = 1;
36     }
37     if(flag==0)
38     {
39         printf("%.3lf",time);
40     }else
41     {
42         printf("Too hard
");
43     }
44     return 0;
45 }

 

以上是关于E - Straight Shot Gym - 101652R的主要内容,如果未能解决你的问题,请参考以下文章

Straight Master Gym-101775J (思维+差分)

2017 ECL-FINAL J.Straight Master

福建省赛--Problem E The Longest Straight(二分枚举)

Gym - 101438F Tree Game

Gym 101917 E 简单计算几何,I 最大流

E - Flow Gym - 102471E