• Fire or Retreat


    Description

    在与科技水平远胜于我们的外星人的战斗最后,我们能够用来对外星装甲造成伤害的武器只剩下了……呃,一些迫击炮?

    为了最大程度的节省弹药,下面一些事情,是你,一个新兵需要知道的:

    1 每架迫击炮的发射动能都是一个固定值。这意味着同一架迫击炮发射出来的炮弹初始速率相同;

    2 每架外星装甲都配备有隐形装置,隐形装置会有周期性的充能,也就是说一旦侦测到外星装甲,要么开火要么撤退;

    3 每架迫击炮都可以以一定的角度射击.

    现在你的任务就是对于每架侦测到的装甲,快速决定是射击还是撤退。一旦能够射击到外星装甲的话,当然是要开火的。 (重力加速度g=10m/s^2;,忽略其他外在因素)

    Input

    第一行输入一个整数T,代表接下来有多少个样例。 接下来有T行输入,每行有两个整数v、d(v <= 1000000m/s, d <= 1000000m),代表这架迫击炮的炮弹速率v和侦测到的外形装甲离你的水平距离d。

    Output

    对于每个样例,输出一行结果并换行。如果迫击炮发射的炮弹能够击中外星装甲,则输出“Fire”;否则,输出“Retreat”。

    Sample Input

    2 100 1000 17 300

    Sample Output

    Fire Retreat

    HINT

    抛物线运动。

    设vx = v*cosα

      vy = v*sinα

    推得sin2α = d*g/(v*v)

    sin2α要满足>0且≤1

     1 #include <iostream>
     2 #include <cstring>
     3 #include <cstdio>
     4 #include <string>
     5 #include <algorithm>
     6 using namespace std;
     7 double d, v;
     8 int main(){
     9     int T;
    10     scanf("%d", &T);
    11     while(T--){
    12         cin>>v>>d;
    13         double ans = d/v*10/v;
    14         if(ans <= 1 && ans > 0) printf("Fire
    ");
    15         else printf("Retreat
    ");
    16     }
    17     
    18     return 0;
    19 }
  • 相关阅读:
    WinForm获取窗体关闭原因和是否取消关闭值
    DIV CSS 居中代码(以及靠右)
    C#获取本机所有IP地址(包括局域网和本机外网IP)
    C# WinForm关闭窗体确认
    .NET WinForm全屏和退出以及蓝屏黑屏等
    HTML5标签
    C# 文件、文件夹操作语句(删除,创建,移动,检查是否存在)
    jquery聚焦文本框
    JS当前页面登录注册框,固定DIV,底层阴影
    Visual Studio 怎样添加引用
  • 原文地址:https://www.cnblogs.com/titicia/p/4342086.html
Copyright © 2020-2023  润新知