水题,哎,可是第一次是因为编译错了,vs不知咋了,无奈;
后面几次又因为类型用了int错了,痛苦;
题目描述
在与科技水平远胜于我们的外星人的战斗最后,我们能够用来对外星装甲造成伤害的武器只剩下了……呃,一些迫击炮?
为了最大程度的节省弹药,下面一些事情,是你,一个新兵需要知道的:
1 每架迫击炮的发射动能都是一个固定值。这意味着同一架迫击炮发射出来的炮弹初始速率相同;
2 每架外星装甲都配备有隐形装置,隐形装置会有周期性的充能,也就是说一旦侦测到外星装甲,要么开火要么撤退;
3 每架迫击炮都可以以一定的角度射击.
现在你的任务就是对于每架侦测到的装甲,快速决定是射击还是撤退。一旦能够射击到外星装甲的话,当然是要开火的。 (重力加速度g=10m/s^2;,忽略其他外在因素)
输入
第一行输入一个整数T,代表接下来有多少个样例。 接下来有T行输入,每行有两个整数v、d(v <= 1000000m/s, d <= 1000000m),代表这架迫击炮的炮弹速率v和侦测到的外形装甲离你的水平距离d。
输出
对于每个样例,输出一行结果并换行。如果迫击炮发射的炮弹能够击中外星装甲,则输出“Fire”;否则,输出“Retreat”。
样例输入
2
100 1000
17 300
样例输出
Fire
Retreat
来源
1 #include<iostream> 2 #include<queue> 3 #include<cstdio> 4 #include<cmath> 5 #include<string> 6 #include<list> 7 using namespace std; 8 int main() 9 { 10 int n; 11 cin >> n; 12 while (n--) 13 { 14 long long a, b; 15 cin >> a >> b; 16 double s = a*a*1.0 / 10; 17 if (s >= b) 18 cout << "Fire" << endl; 19 else 20 cout << "Retreat" << endl; 21 } 22 return 0; 23 }
后面又想了想,应该是因为定义的时候是int类型,两数计算的结果返回的也是int类型,肯定会超;