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

C语言!,.⑤汽车加油:一辆汽车加满油后可行驶n公里.旅途中有若干个加油站.设计一个有效算法,指出应在哪些加油站停靠加油,使沿途加油次数最少.输入:第一行有2 个正整数N和K(1

题目详情
C语言!,.
⑤汽车加油:
一辆汽车加满油后可行驶n公里.旅途中有若干个加油站.设计一个有效算法,指出应在哪些加油站停靠加油,使沿途加油次数最少.输入:第一行有2 个正整数N和K(1
▼优质解答
答案和解析
#include
void main()
{
int N,K,i,j,cnt;
int dist[100];
while(!(printf("输入N和K:")&&scanf("%d%d",&N,&K)&&N>0&&K>0&&N<=100&&K<=100)){
printf("输入错误!\n按任意键重新输入");
getch();
system("cls");
}
for(i=0;iprintf("第%d个加油站到第%d个加油站的距离为:",i,i+1);
scanf("%d",&dist[i]);
}
printf("第%d个加油站到目的地的距离为:",i);
scanf("%d",&dist[i]);

for(i=0;i<=K;i++){
if(dist[i]>N){
printf("No Solution.\n");
}
}
for(i=0,j=0,cnt=0;i<=K;i++){
j+=dist[i];
if(j>N){
cnt++;
j=dist[i];
}
}
printf("最少加油次数:%d\n",cnt);
}
看了 C语言!,.⑤汽车加油:一辆...的网友还看了以下: