牛客网—小周的曲射炮(公式推导)

题目描述

小周最近在玩一款二战游戏,他因而对曲射炮的轨迹产生了很大的兴趣,但是在尝试计算后,小周发现这个问题并不是那么简单,他因而来请教你这位计算机高手,请你来帮帮他吧。问题大致可描述为,在二维平面的原点(0,0)处有一曲射炮,炮口可沿任意方向发出初速度为v的炮弹,小周想要把炮弹投射到点(x,y)处,现在你需要帮助小周得出炮口与地面夹角的弧度。为使问题简化,我们忽略空气阻力,x轴沿水平方向分布。设重力加速度g=9.8。

输入描述:

第一行为一个整数T,表示输入的数据组数。 每组数据对应一行输入, 依次为三个正整数x,y,v,含义如题面所示。

输出描述:

每组数据输出一行,如果无论如何挑战炮口与地面夹角都无法将炮弹投射这目标处,输出“NO SOLUTION.”(不包括引号),否则从小到大输出所有可能的弧度(均四舍五入至小数点后5位,如果有两个解四舍五入至小数点后5位后相同,只视为一个解),中间用一个空格分隔。

输入

4
45 56 78
32 78 55
33 33 25
12 25 25

输出
0.93196 1.53271
1.24254 1.50973 NO SOLUTION.
1.25456 1.43951

实现思路:一个斜上抛的物理模型,把这个过程模拟出来,分两种情况
①:斜上抛上升过程中经过目标点
②:斜上抛下降过程中经过目标点
推导过程如下:

实现代码:

#include<iostream>
#include<cstdio>
#include<cstring>
#include<cmath>
#include<algorithm>using namespace std;const double g = 9.8;
double x,y,v,a,b,c;int main()
{int T;cin>>T;while(T--){scanf("%lf%lf%lf",&x,&y,&v);a=g*x*x/(2*v*v);b=-x;c=g*x*x/(2*v*v)+y;if(b*b-4*a*c<0){printf("NO SOLUTION.\n");
}else{double x1=((-b+sqrt(b*b-4*a*c))/(2*a));double x2=((-b-sqrt(b*b-4*a*c))/(2*a));double ans=atan(x1);double bns=atan(x2);printf("%.5lf %.5lf\n",bns,ans);}}return 0;
}

牛客网-小周的曲射炮相关推荐

  1. 牛客网 - 小乐乐打游戏(BFS)

    链接:https://ac.nowcoder.com/acm/contest/301/G 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其他语言65536 ...

  2. 牛客网小bai月赛40

    牛客网小白月赛40 A 数字游戏 B 跳跳跳 D 优美字符串 E 分组 F 过桥 G 空调遥控 I 体操队形 牛客比赛页面跳转 这是一篇菜鸟的自我总结,大佬勿喷,轻点轻点~ A 数字游戏 题目意思: ...

  3. 牛客网 小睿睿的方案 解题报告

    小睿睿的方案 链接: https://ac.nowcoder.com/acm/contest/371/C 来源:牛客网 题目描述 小睿睿虽然已经是人生赢家了,但当他看见学校里其他人秀恩爱时仍旧会十分不 ...

  4. 牛客网小白二(2018.4.21)

    需要加强的内容:1.递归(尼姆堆) 2.字符与字符串的输入输出,有关其求长度或个数的的函数.语法等 3.有向图.无向图.树的遍历 一.数字方阵 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/ ...

  5. 牛客网 小A买彩票 (dp)

    题目链接:点此跳转 题目大意: 小A最近开始沉迷买彩票,并且希望能够通过买彩票发家致富.已知购买一张彩票需要3元,而彩票中奖的金额分别为1,2,3,4元,并且比较独特的是这个彩票中奖的各种金额都是等可 ...

  6. 牛客网 OI 赛制测试赛

    比赛链接:这里写链接内容 A 斐波那契 链接:https://www.nowcoder.com/acm/contest/181/A 来源:牛客网 设f[i]表示斐波那契数论的第i项 f[1]=1,f[ ...

  7. 牛客网 水题 递推找规律

    链接: https://www.nowcoder.com/acm/contest/91/E 来源:牛客网 小Y买了很多苹果,但他很贪吃,过了几天一下就吃剩一只了.每一天小Y会数出自己的苹果个数X,如果 ...

  8. 牛客网 15029 (栈)

    链接:https://ac.nowcoder.com/acm/problem/15029 来源:牛客网 小鱼儿吐泡泡,嘟嘟嘟冒出来.小鱼儿会吐出两种泡泡:大泡泡"O",小泡泡&qu ...

  9. 牛客网笔试题 (经常更新)

    ---hashMap --- 按value排序 // map排序public static void sortMap(Map<String,Integer> map){List<Ma ...

最新文章

  1. (轉貼) 友達光電第五屆【A+種子暑期實習計畫】開始辦理報名 (News)
  2. ztree 自定义参数_Ztree节点前加上两个自定义按钮
  3. hadoop可以解决什么问题_聊一聊,临时工外包可以为企业解决什么问题
  4. Javascript基础(一)
  5. 如何选择RabbitMQ和Kafka
  6. Flink 集群搭建
  7. js小例子(标签页)
  8. 简单的五险一金计算器
  9. 伪终端设备ttySx/ttyx/ptyMN/ttyMN/ptmx/(pts/x)
  10. oracle投毒漏洞检测,Oracle Database Server 'TNS Listener'远程数据投毒漏洞(CVE-2012-1675)的完美解决方法...
  11. 符号速率,码片速率,业务速率,信道编码,扩频因子
  12. 公众号运营该如何快速找到内容方向定位?
  13. c语言医生值班题目讲解,C趣味程序百例(17)哪个大夫哪天值班
  14. Unity开发Hololens2—环境配置和官方案例发布并部署到设备上
  15. 【Selenium】Python自动化测试定位失败的原因以及解决方案
  16. easy excel date 类型解析报错_【今日真题】鼓楼小学教师招聘2017年考试真题及答案解析(上)...
  17. MongoDB实战读书笔记(二):面向文档的数据
  18. 不用取色器快速获取颜色的RGB
  19. 【C语言】C语言中EOF的具体用法
  20. 2019年陕西单招计算机机测试题,2019年陕西单招数学试题答案.pdf

热门文章

  1. Armadillo使用介绍(十三):常量
  2. 【问题记录】警告:warning.warn(‘Downloading:{}‘.format(url),DownloadWarning)
  3. 你知道该如何选择合适的光缆吗?
  4. linux系统安装内存测试,一种Linux系统下基于IDK内存注错的测试方法及系统与流程...
  5. FDTD Solution——sweep
  6. [C语言]之反省自己
  7. 西游记中玉帝的实际地位
  8. 指定得文件初始化StreamWriter类得新实例
  9. 《SEO实战密码》——SEO网站结构优化
  10. Java密钥库及keytool使用详解