码迷,mamicode.com
首页 > 其他好文 > 详细

E - Straight Shot Gym - 101652R

时间:2019-04-07 09:43:42      阅读:141      评论:0      收藏:0      [点我收藏+]

标签:需要   就是   flag   stream   alt   clu   har   include   http   

技术图片

技术图片

技术图片

技术图片

解题思路:这道题的题意就是给你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\n");
43     }
44     return 0;
45 }

 

E - Straight Shot Gym - 101652R

标签:需要   就是   flag   stream   alt   clu   har   include   http   

原文地址:https://www.cnblogs.com/yewanting/p/10663809.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!