#P2551. [AHOI2001] 华夏60战斗机
[AHOI2001] 华夏60战斗机
题目描述
华夏 60 超音速战斗机是当今世界上机动性能最先进的战斗机。战斗过程中的一个关键问题是如何在最短的时间内使飞机从当前的飞行高度和速度爬升/俯冲到指定的高度并达到指定速度,以便占据有利的战斗位置。
现假定只允许华夏 60 执行以下三种基本飞行动作,并且只能在完成了一个基本动作的情况下再去执行另一个基本飞行动作。这样华夏 60 的飞行可以表示成由这三种基本飞行动作组成的动作序列。
(1) 维持原速做恒速爬升飞行,直至飞行高度提高 ∆h 英尺;
(2) 水平加速飞直至速度提高 1 马赫(1 马赫≈1200 公里/小时);
(3) 垂直俯冲飞行 ∆h 英尺,飞行速度会提高 1 马赫。
同时假定飞机的初始飞行速度和执行每个基本飞行动作初始时刻的飞行速度都是 1 马赫的整数倍,且不超过 6 马赫;初始飞行高度和执行每个基本飞行动作初始时刻的飞行高度都为 ∆h 英尺( ∆h 是整数)的整数倍。
实验研究表明:在不同高度 H 和不同的初始速度V 完成上述的三种基本飞行动作所需的时间也是各不相同的。表 1~表 3 给出了 ∆ h = 15000英尺和最大飞行高度 = 75000
H m 英尺时完成这三种基本飞行动作所需的时间。
根据表 1~表 3 的数据,欲使华夏 60 战斗机从 H = 0 英尺、V = 1马赫的飞行状态达到 H = 75000 英尺、V = 6 马赫的飞行状态的最短飞行时间是79 秒,相应的飞行动作序列是:
(1) 恒速爬升飞行至 H = 15000英尺,V = 1马赫状态;
(2) 连续做两次水平加速飞行至 H = 15000英尺,V = 3马赫状态;
(3) 连续做四次恒速爬升飞行至 H = 75000 英尺,V = 3马赫状态;
(4) 水平加速飞行至 H = 75000 英尺,V = 4马赫状态;
(5) 连续做两次垂直俯冲飞行至 H = 45000 英尺,V = 6 马赫状态;
(6) 连续做两次恒速爬升飞行至 H = 75000 英尺,V = 6 马赫状态。
现在小明驾驶华夏 60 战斗机以V1马赫的速度飞行于 H1英尺高度,中队长发出了让他以V2 马赫的速度飞行于 H 2 英尺高度的指令。请你编写程序帮小明决策一下如何飞行才能花费最少的时间执行完中队长下达的命令。
输入格式
输出格式
输出信息用两行来存放。第一行存放你求出的最优方案所需的时间。
第二行存放该最优方案的动作序列(以 R 表示恒速爬升飞行,A 表示
水平加速飞行,D 表示垂直俯冲飞行)。第二行中不允许出现多余的
字符(包括空白字符)。
0 1 75000 6 15000 75000
12 12 12 11 12 14
11 10 8 9 10 11
9 8 6 7 8 8
8 7 6 6 6 5
8 6 6 6 6 5
11 11 11 13 15
10 10 9 9 10
10 9 9 10 10
9 8 9 9 10
7 8 8 9 9
7 7 7 8 8
5 4 3 3 2
4 3 3 2 2
3 3 2 2 2
3 3 2 2 2
79
RAARRRRADDRR