一个旅行家想驾驶汽车从城市A到城市B(设出发时油箱是空的)。给定两个城市之间的距离D、汽车油箱的容量C、每升汽油能行驶的距离D0、沿途油站数N、油站I离出发点的距离D1以及该站每升汽油的价格PI,I=1,2,…,N。要花最少的油费从城市A到城市B,在每个加油站应加多少油,最少花费为多少?
C代码:
#include<stdio.h>
#define D 275.60 //两城之间的距离
#define C 11.90 //汽车油箱的容量
#define D0 27.40 //每升汽油能行驶的距离
#define P 2.80 // 出发点每升汽油的价格
#define N 2 // 沿途油站数
#define D1 102.00 // 油站1距离出发点的距离
#define P1 2.90 // 油站1每升汽油的价格
#define D2 220.00 // 油站2距离出发点的距离
#define P2 2.20 // 油站2每升汽油的价格
int main()
{
float d;// 汽车加满油能行驶的距离
float W,W0,W1,W2;//汽车总以及三段路上的费用
float C0,C1,C2;//汽车在三个加油站加油量
d=C*D0;
W=W0=W1=W2=0;
C0=C1=C2=0;
if((d<D1)&&(d<(D2-D1))&&(d<(D-D2)))
printf("No Sloution");