我在作业问题上需要一些帮助/指导。如果有人能指点我如何解决这个问题,我会非常感激 :)
作业
"一只名叫Mo的愤怒鸟正在飞行中,他要飞很长的路程去向猪复仇。为了节省能量以备战,这只鸟将利用降低飞行能耗的气流。在起飞前,BirdHQ给了这只鸟一个以下格式的输入文件:
- 第一行只包含1个整数,表示不使用气流飞行1英里所需的恒定能量。
- 每个后续行都包含3个以空格分隔的整数:气流的起始英里标记、气流的结束英里标记,以及表示飞越该气流距离所需的总能量的整数。
例如,“3 7 12”这一行意味着飞越从第3英里到第7英里的4英里距离需要12个能量单位。
请注意,气流可以重叠,但鸟不能同时处于多个气流中,并且它不能飞行部分气流。
为简单起见,将最远气流的结束英里标记视为旅程的结束。
编写一个Python程序,输入文件“jetstreams.txt”,以规划Mo应该飞行的最佳气流序列,以使他在整个旅程中能量消耗最小。输入文件中的所有整数均为非负整数。输出最小总能量和表示气流端点的元组列表。
例如,对于给定的样本jetstreams.txt,飞越全部24英里所需的最小总能量为352个能量单位,最佳气流序列为[(0,5), (6,11), (14,17), (19,24)]。"
jetstreams.txt
50
0 5 10
1 3 5
3 7 12
6 11 20
14 17 8
19 24 14
21 22 2
这是否类似于解决图形的最短路径问题?