飞行计划
   

  输入文件名:flight.in

  你的任务是设计一个程序来规划航线。每一条航线包括一系列的地域。你的程序必须对每一个地域选择一个最好的海拔高度飞行,以使总的耗油量最少。

  一架飞机具有一个正常飞行速度,用一个常数VCRUISE表示;对于这个正常的飞行速度飞机有一个固定的飞行海拔高度,用一个常数AOPT表示。当飞机在这个海拔高度AOPT飞行时,其每小时耗油GPHOPT(gallon),当飞机在不同于AOPT高度飞行时,每小时耗油量将随较AOPT的垂直距离每高或低1000(feet)而增加GPHEXTRA(gallon)。飞机的起点和终点的海拔高度都为0。另外飞机每上升1000(feet)需要增加CIIMBCOST(gallon)的耗油量,规定飞机升降的时间不计。这样,飞机在每一个地域都应有一个飞行高度和飞行速度,那么,你的任务就是确定这个飞行计划。下面我们给出前述定义的一些常数:

  VCRUISE=400节(1节指一海里每小时)    表示飞机的速度;
  AOPT=30000(feet)            表示飞机正常飞行的高度;
  GPHOPT=2000(gal/h)           表示飞机正常飞行时每小时耗油量;
  GPPIEXTRA=10(gal/h·1000 ft)      表示飞机高度离开AOPT每1000feet需增加每小时的耗油量;
  CLIMBCOST=50(gal/1000 ft)       表示飞机每上升1000feet需要的耗油量;
  (注:gallon,加仑,1gal(ga11on)=3.785412L feet,英尺,1ft=0.3048m)

  对于每个地域,我们已知它的长度,以及当地在20000feet和40000feet处的风速,并且风速是随高度线性变化的。于是,飞机飞行的实际速度为VCRUISE与当地等高的风速的矢量和(注意,风速与VCRUISE方向均水平)。

  飞行高度在{20000feet,40000feet}范围内,并且是1000feet的整数倍。你的程序需要确定飞机在各个地域的实际飞行高度,使总耗油量最小,并算出每个旅程的耗油量。

  输入

  N(待规划的航线数)。
  (对于每个航线有:
  K(地域数)(0<K<10)。
  (接下去的K行描述这是个地域,每行包括三个整数:

  (1)地域长度(单位为海里);
  (2)低空风速(20000feet上。单位为节);
  (3)高空风速(40000feet上。单位为节)。

  注意,当地风速在垂直方向上呈反向线性变化,例如在30000feet处的风速为在20000feet处的风速与在40000feet处的风速的平均数。

  输出

  flight编号:各个地域的飞行高度(1000feet为单位),最小总耗油量(单位为gallon)

  输入范例

  2
  2
  1500 -50 50
  1000 0 0
  3
  1000 50 0
  2000 0 20
  1800 -50 100

  输出范例

  Flight l:35 30 13985
  Flight 2:20 30 40 23983
  

   

 
网站导航 | 关于曙光 | 联系我们 | 请提意见
Copyright © FuJian Sunshine Educational Info. Co.,Ltd.
福建曙光教育资讯有限公司 版权所有