17235 Minecraft是个好游戏
时间限制:1000MS 内存限制:65535K
Description
Minecraft是一个颠覆性的高自由度游戏,其中文译名叫“我的世界”。之所以会有如此译名,原因在于这个游戏就像一个沙盒世界,玩家就像是个创世神一般。其颠覆性在于它不同于以往那些游戏“要你做
去什么”,相反的,是由玩家去思考“我要做什么”。
说了这么一段,你们是不是很想上网搜一搜怎么玩呢?不过玩之前麻烦先帮Lrc解决一个问题。
这个游戏里面是可以制作逻辑电路的,通过简单的搭建,玩家可以制作出一个简单的TNT大炮。
假设现在Lrc想使用大炮轰地面上炸距离自己s米处的目标,大炮的发射仰角为A(单位角度),炮弹的初速度为v米/秒,TNT在发出后t秒爆炸,爆炸半径为r米(当目标到爆炸点的距离<=r时即视为击中),
炸药落地后不反弹。重力加速度取10m/s^2。问:Lrc能否击中目标?PS:目标与Lrc于同一平面。
输入格式
输入包括5个实数,分别为s(s>0),A(0<A<90),v(v>0),t(t>0),r(r>0),之间用空格分割。
输出格式
输出一行,若能击中目标,输出“nice!”(不包含引号),否则输出“T^T”(不包含引号)。
输入样例
9 30 10 1 0.5
输出样例
nice!
来源 lyric_seraph
卡住落地时间总以为是速度减到0,高中物理知识就这样还给老师了- -。
#include <iostream>
#include <cstdio>
#include <cmath>
#include <cstring>
#include <algorithm>
using namespace std;
#define mst(a) memset((a),0,sizeof(a))
//#define local
int main()
{
#ifdef local
freopen("input.txt","r",stdin);
#endif
double s,A,v,t,r,et,vx,vy;
cin>>s>>A>>v>>t>>r;
vx=v*cos(A*acos(-1.0)/180);
vy=v*sin(A*acos(-1.0)/180);
et=vy/10*2;
if(et>=t){
double x=vx*t-s,y=vy*t-t*t*5;
if(x*x+y*y<=r*r)printf("nice!\n");
else printf("T^T\n");
}
else{
double x=abs(vx*et-s);
if(x<=r)printf("nice!\n");
else printf("T^T\n");
}
return 0;
}