
hd2298
发布日期:2022-02-08 04:20:46
浏览次数:1
分类:技术文章
本文共 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 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
逛到本站,mark一下
[***.202.152.39]2023年09月18日 02时31分46秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
库函数之sprintf与snprintf
2019-03-07
库函数之scanf与sscanf
2019-03-07
Linux命令之lsusb
2019-03-07
嵌入式Linux开发,去掉内核kernel开机画面logo屏幕上的光标
2019-03-07
Linux,curl工具,测试web,数据流直接打印到控制平台
2019-03-07
Element-UI安装使用教程(一)
2019-03-07
Vue开发入门(一) | vue基础指令 &案例
2019-03-07
PHP开发入门(一) | php基础语法知识
2019-03-07
WebStorm 中安装并使用Element-UI(入门)
2019-03-07
Element-UI开发指南--动画和组件基础(二)
2019-03-07
Vue+Bootstrap实现商品的增删计算案例
2019-03-07
设计素材网址集合(比较全)
2019-03-07
Liunx配置DNS服务器
2019-03-07
Liunx配置主DNS服务操作案例
2019-03-07
css+html鼠标划入hover效果(一)
2019-03-07
常用正则表达式(重要)
2019-03-07
Python3进阶(二) | 正则表达式
2019-03-07
Python绘图 | 初识Turtle绘图~
2019-03-07
Python爬虫从入门到实战教程
2019-03-07
Python小伎俩之实现群发邮件
2019-03-07