关闭

真三国无双

243人阅读 评论(0) 收藏 举报
分类:


1020: 真三国无双

Time Limit: 1 Sec  Memory Limit: 128 MB
Submit: 389  Solved: 96
[Submit][Status][Web Board]

Description

真三国无双是魔兽的一个游戏,该游戏是以中国三国的历史背景而制作的,该游戏是5 V 5的游戏模式,敌对双方各5个英雄,推掉了对方的大本营就算取得了胜利。 

ZYHSN都喜欢玩这个游戏,但是他们谁也不服谁,都觉得自己的操作比对方厉害,因此他们两人决定以单挑的方式来一决高下。ZYH选择了他最喜欢的英雄:关羽,SN也选择了他喜欢的英雄:典韦。 

在他们开始正式比赛前,裁判介绍了一下关羽和典韦的技能。典韦有个脚踢地面而造成群晕的技能,简称为T,由于是游戏,它会有个动画效果,因此典韦使用T分为三个阶段:

点击T -> T的动画 -> T的释放

点击T的时间可以忽略,T的动画需要a(MS)T的释放时间为b(MS),在这段时间内,如果对方英雄在地面,就会被击晕。

 

而关羽使用技能D,过程是这样的:

点击D -> 选择方向à 转身(英雄会逆时针转身到选择的方向)-> 跳到空中-> 落下

点击D和选择方向的时间可以忽略,转身时间为c(MS),跳到空中停留的时间为d(MS)。英雄当前方向与选择方向之间的逆时针夹角叫做旋转角度。转身时间c = 旋转角度 × 10 (MS)。在游戏中,旋转角度的范围为[0, 360),不可能小于0或者大于等于360 

因此关羽和典韦单挑的时候,关羽喜欢用自己的技能D躲典韦的技能T,这就必须满足在典韦技能T释放的b(MS)时间内,关羽必须在空中。为了简化问题,我们认为,关羽在起跳或者落地的瞬间,典韦的技能T对他是无效的。 

裁判正式介绍技能后,ZYH(关羽)就和SN(典韦)开始单挑了,他们在打架多次后,ZYH(关羽)和SN(典韦)的血量都处于死亡的边缘,此时SN(典韦)果断使用了自己的技能T,希望可以把ZYH(关羽)杀了,而ZYH(关羽)也在同时使用了技能D 

现在ZYH(关羽)求救于你,希望你能帮他计算关羽能选择的最小旋转角度,他的命就掌握在你的手上,你可不能随便应付吧。另外注意一点的就是,他们的技能现在只能释放一次

Input

输入的第一行表示测试数据的组数N。下面输入包括N行,每行包括三个整数,分别表示a, b, d (1 ≤ a ≤ 10000, 1 ≤ b ≤ 10000, 1 ≤ d ≤ 10000)

Output

如果ZYH(关羽)可以成功躲掉SN(典韦)的技能T,则输出能成功躲避的最小旋转角度(小数点后保留两位有效数字)。否则输出IMPOSSIBLE;每个输出后都换一行。

Sample Input

3
1 1 1
1 2 1
2 1 2

Sample Output

0.10
IMPOSSIBLE
0.10

HINT

题目较长,但都是扯淡,主要提取几个不等式(见代码),

注意题目中给出的各种约束条件,特别是不明显的,如输出角度不小于0等;

同时注意输出0时要注意格式0.00   (因为这wa N次,简直泪奔)

#include<iostream>
using namespace std;
main()
{
 int t;
 scanf("%d",&t);
 while(t--)
 {
  int a,b,d;
  scanf("%d%d%d",&a,&b,&d);
  if(b>d||3600<=a+b-d)
  {
   printf("IMPOSSIBLE\n");
   continue;
  }
  float tmp=a+b-d;
  if(tmp>0)printf("%.2f\n",tmp/10.0);
  else printf("0.00\n");
 }
}

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:34958次
    • 积分:1517
    • 等级:
    • 排名:千里之外
    • 原创:120篇
    • 转载:16篇
    • 译文:0篇
    • 评论:0条