早教吧 育儿知识 作业答案 考试题库 百科 知识分享

汽车加满油看不懂一辆汽车加满油后可以行驶nkm,旅途中有若干个加油站,设计一个有效的算法,指出应在哪些加油站停靠加油,使沿途加油次数最少.算法设计:对于给定的n和k个加油站位置,计

题目详情
汽车加满油 看不懂
一辆汽车加满油后可以行驶nkm ,旅途中有若干个加油站,设计一个有效的算法,指出应在哪些加油站停靠加油,使沿途加油次数最少.
算法设计:对于给定的n和k个加油站位置,计算最少加油次数.
数据输入;由文件input.txt给出输入数据.第一行有2个正整数n和k,表示汽车加油后可以行驶的nkm,且旅途中有k个加油 站,接下来的一行中有k+1个整数,表示第k个加油站与k-1个加油站之间的距离,第0个加油站表示出发地,汽车已加满油.第k+1个加油站表示目的地,
结果输出:将计算的最少加油次数输出到文件output.txt 如果无法到达目的地则输出”no solution“.
输入文件示例:输出文件示例:
input.txt output.txt
7 7 4
1 2 3 4 5 1 6 6
#include "stdio.h"
void greedy(int d[],int n,int k)
{
int i,num=0,s=0;
for( i = 0;i n)
{
printf("no solution\n");
return;
}
}
for(i=0;i
▼优质解答
答案和解析
这段代码是错的,不要研究了.
你把输入改一下,就能知道它的问题了:
n=7
k=8
d[]={7,1,2,3,4,5,1,6,6}
在所有加油站之前再加一个加油站,让它和起点的距离正好等于7,这样从起点出发,开到第一个加油站正好没油,加满油之后,后续的路程和示例中的情况完全一样.也就是说一共需要加5次油就能跑完全程.
自己运行一下看看程序的输出是什么.
看了 汽车加满油看不懂一辆汽车加满...的网友还看了以下: