加油問題演算法
Ⅰ 智力題!求教高手!汽車加油問題
加12次油~ 12次
具體分析~
只看前面500米~ 把500公里 沒隔100公里定為一個點
也就是起點是加油站 後面五個點為油桶
你分完段後從加油站出發到第一個油桶來回要用去200公里的油則你只能存300公里的油,到底存多少一開始誰都不知道~所以我們要從後往前推
你若想行駛玩最後500公里則你車里必須在500公里處時油是滿的
那麼你在第4油桶必須存800公里的油 從第4油桶往第5油桶存油來回消耗200公里的油 則存300公里的油 再從第4油桶到第5油桶要消耗100公里的油
第5油桶有300公里的油 則車里還要有200公里的油 算一下你到第四油桶往第五油桶行駛時必須要有800公里的油
一次類推 第三油桶往第四油桶行駛時要有1300公里的油
第二油桶往第三油桶行駛時要有2200公里的油
第1油桶往第2油桶行駛時要有3700公里的油
加油站往第一油桶運11次是3300公里的油 回去加油 回到第一桶油的位置車上還有400公里的油 加起來剛好3700公里的油 總共加了12次
Ⅱ PASCAL貪心演算法,汽車行駛加油問題
http://hi..com/samroxas/item/d775f2c0b2f79c0aad092f0e
這是我曾經寫的結題報告,基本一樣的題目,相信會對你有幫助。
Ⅲ 高分求貪心演算法求解汽車加油問題
#include <stdio.h>
#define N 1000
int greedy(int d[],int n,int k)
{
int num = 0;
int i=0;
int s=0;
for( i = 0;i < k;i++)
{
if(d[i] > n)
{
printf("no solution\n");
return 0;
}
}
for( i = 0,s = 0;i < k;i++)
{
s += d[i];
if(s > n)
{
num++;
s = d[i];
}
}
printf("%d\n",num);
return 1;
}
void main()
{
int i,n,k;
int d[N];
printf("請輸入汽車可行駛: \n");
scanf("%d",&n);
printf("加油站的個數: \n");
scanf("%d",&k);
for(i=0;i<k+1;i++)
{
printf("請輸入第%d段路的長度: ",i+1);
scanf("%d",&d[i]);
fflush(stdin);
}
greedy(d,n,k+1);
}
Ⅳ 租車加油怎麼算
租車出行加油這樣來算的:
在一般情況下,你從租賃公司取得車輛時,油箱里的汽油都是加滿的,所以,你在交還汽車時,也要將油箱里的汽油加滿。
如果你拿到車時,油箱里的汽油不滿,你只要將汽油加到同樣的程度,還車就可以了。
假如在你還車時,沒有將汽油加到規定的程度,租賃公司不但要在押金里扣除你的油費,還要收取一定的服務費。
拓展資料:
通常在租車時,租金中都不包含汽油費、過路費、停車費等各項費用。
租車人向租賃公司支付汽油費一般有三種形式:
第一種就是在還車前由租車人自行將油箱加滿。
第二種是還車時直接將車開回租賃公司,支付相應的油費和服務費。
第三種是使用車輛前預付一桶油的價格。
Ⅳ 汽車加油問題(用C語言或C++)
#include<stdio.h.>
int main()
{
int n,m,i,j,k,d[1000],dis,count,n2;
while((scanf("%d%d",&n,&k))!=EOF)
{ dis=0;
count=0;
for(i=0;i<k+1;i++)
{scanf("%d",&d[i]);
dis+=d[i];
}
if(dis<=n)
{
printf("0\n");
}
else{
j=0;
for(i=1;i<k+1;i++)
if(d[0]==d[i]&&d[0]==n)
j++;
if(j==k)
printf("%d\n",k);
else
{
j=0;
for(i=1;i<k+1;i++)
if(d[0]==d[i]&&d[0]>n)
j++;
if(j==k)
printf("No Solution\n");
else
{
n2=n;
for(j=0;j<k+1;j++)
{
if(n2>=d[j])
{
n2=n2-d[j];
}
else
{
n2=n-d[j];
if(n2<0)
{printf("No Solution\n");
break;
}
else
count++;
}
}
if(j>=k+1)
printf("%d\n",count);
}
}
}
}
}
這個我上交是對的!
Ⅵ 算油耗怎麼算的,是油錢除以公里數嗎,得到每公里油耗
計算油耗的方法,是要計下一段時間內行駛的里程和加油數量,然後列算式即可。比如在一段時間內行駛了500公里,加油量是300元,設百公里油耗是X元,那麼列算式300/500=X/100,通過計算可得X=60,即百公里油耗是60元,平均每公里油耗就是0.60元。按每升汽油8.5元計算,每百公里油耗就是60/8.5=7升,平均每公里油耗0.07升。
Ⅶ 加油演算法奧
500塊相當於540塊,540塊可加540/7.1
約是76升油,實際只出500塊,則每升油錢是500/76約是6.57元,則每升便宜7.1-6.57=0.53元
Ⅷ C語言 汽車加油問題
#include<stdio.h>
int main()
{
int n,k,i,t=0,sum=0,a[101]={0};
scanf("%d %d",&n,&k);
for(i=1;i<=k+1;i++)
{
scanf("%d",&a[i]);
}
for(i=1;i<=k+1;i++)
{
if(a[i]>n)
{
printf("No Solution\n");
return 0;
}
}
for(i=1;i<=k+1;i++)
{
sum+=a[i];
if(sum>n)
{
t++;
i--;
sum=0;
}
else if(sum==n)
{
t++;sum=0;
}
}
if(a[k+1]+a[k]==n)
t--;
printf("%d",t);
}
改成這樣應該就可以實現了
Ⅸ 油價是如何計算的
(100/7.89=總共加多少油)/(100/8.6=每公里用多少油)=一百元跑的路
計算一公里多少錢:加滿箱油,跑100公里。再加滿。用後加滿的油價除以100公里,得數就是平均每公里花的錢數。
例如:一輛汽車消耗A升燃油的情況下行駛了N公里,那麼百公里油耗=A÷N×100。帶入具體數字,如果一輛汽車消耗了4升燃油的情況下可以行駛50公里,那麼該汽車的百公里油耗=4升÷50公里×100=8升/百公里,百公里油耗就是8升。
(9)加油問題演算法擴展閱讀:
百公里油量總價的計算方式:
1、車行100公里的油耗×當時的油價=百公里行車油價。例如:8.3L(百公里油耗)×7(油價)=58.1元。
2、加油金額÷行駛歷程×100=百公里油價。例如:360(空油箱加油價格)÷600(行駛公里)×100=60元。
用這種方法的測定值比較接近實際值。美國汽車工程師學(SAE)制定了SAEJ10926道路循環試驗規范,被廣泛採用。這一規范包括四種不同的循環:市區、郊區、市際(55Mile/h)和州際(70Mile/h),再用此值計算出油耗。計算公式:X=a*經濟車速/b,a為百公里油耗,b為測定值。
Ⅹ 汽車加油問題 貪心演算法(C++)
第一次加滿油
然後在能到達的最遠的加油站再加滿油
如此反復, 最後到達目的地
如果中間某次加油後不能到達下面任何一個加油站
那麼就無解