hd2298
发布日期:2022-02-08 04:20:46 浏览次数:6 分类:技术文章

本文共 2028 字,大约阅读时间需要 6 分钟。

大哭大哭大哭大哭大哭大哭

Toxophily

Time Limit : 3000/1000ms (Java/Other)   Memory Limit : 32768/32768K (Java/Other)
Total Submission(s) : 16   Accepted Submission(s) : 7
Problem Description
The recreation center of WHU ACM Team has indoor billiards, Ping Pang, chess and bridge, toxophily, deluxe ballrooms KTV rooms, fishing, climbing, and so on.<br>We all like toxophily.<br><br>Bob is hooked on toxophily recently. Assume that Bob is at point (0,0) and he wants to shoot the fruits on a nearby tree. He can adjust the angle to fix the trajectory. Unfortunately, he always fails at that. Can you help him?<br><br>Now given the object's coordinates, please calculate the angle between the arrow and x-axis at Bob's point. Assume that g=9.8N/m. <br>
 

Input
The input consists of several test cases. The first line of input consists of an integer T, indicating the number of test cases. Each test case is on a separated line, and it consists three floating point numbers: x, y, v. x and y indicate the coordinate of the fruit. v is the arrow's exit speed.<br>Technical Specification<br><br>1. T ≤ 100.<br>2. 0 ≤ x, y, v ≤ 10000. <br>
 

Output
For each test case, output the smallest answer rounded to six fractional digits on a separated line.<br>Output "-1", if there's no possible answer.<br><br>Please use radian as unit. <br>

方法

Solution 

这里写图片描述
 

判断一下x1,x2是否在[          0       ,      pi       ]之间然后选一个合法的较小值即可 

#include
#include
#include
using namespace std;#define g 9.8#define pi acos(-1.0)/2.0int main(){ int T; double x,y,v; scanf("%d",&T); while(T--) { scanf("%lf%lf%lf",&x,&y,&v); double a=g*x*x; double b=-2.0*x*v*v; double c=2.0*y*v*v+g*x*x; double d=b*b-4.0*a*c; if(d<0) { printf("-1\n"); continue; } d=sqrt(d); double x1=atan((-b+d)/(2.0*a)),x2=atan((-b-d)/(2.0*a)); if(x1<0||x1>pi&&x2<0||x2>pi)printf("-1\n"); else if(x1<0||x1>pi)printf("%.6lf\n",x2); else if(x2<0||x2>pi)printf("%.6lf\n",x1); else printf("%.6lf\n",x1

转载地址:https://blog.csdn.net/weixin_38960774/article/details/79391968 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Can you find it?2446 csdn直达http://blog.csdn.net/jingttkx/article/details/51302721
下一篇:计祘客-八皇后问题-https://nanti.jisuanke.com/t/381

发表评论

最新留言

做的很好,不错不错
[***.243.131.199]2024年09月30日 00时10分16秒