貪心演算法解決汽車加油問題

2021-08-10 09:10:24 字數 830 閱讀 9516

問題描述:一輛汽車加滿油後可行駛n公里。旅途中有若干個加油站。設計乙個有效演算法,指出應

在哪些加油站停靠加油,使沿途加油次數最少。對於給定的n(n <= 5000)和k(k <= 1000)個加油站位置,程式設計計算最少加油次數。並證明演算法能產生乙個最優解。

在哪些加油站停靠加油,使沿途加油次數最少。對於給定的n(n <= 5000)和k(k <= 1000)個加油站位置,程式設計計算最少加油次數。並證明演算法能產生乙個最優解。

要求:

輸入:第一行有2個正整數n和k,表示汽車加滿油後可行駛n公里,且旅途中有k個加油站。接下來的1 行中,有k+1 個整數,表示第k個加油站與第k-1 個加油站之間的距離。第0 個加油站表示出發地,汽車已加滿油。第k+1 個加油站表示目的地。

輸出:輸出程式設計計算出的最少加油次數。如果無法到達目的地,則輸出」nosolution」。

/*貪心演算法解決汽車加油問題 

*/ #include

#define size 1000

int main()

if(temp>n)

} } printf("最少加油次數為:%d\n",sum);

printf("分別在以下加油站加過油:\n"); 

for(int i=0;iprintf("第%d個 ",b[i]);

}執行結果截圖:

汽車加油問題 貪心演算法

問題描述 一輛汽車加滿油後可行駛 nkm 旅途中有若干個加油站。設計乙個有效演算法,指出應在哪些加油站停靠加油,使沿途加油次數最少。程式設計任務 對於給定的n和k 個加油站位置,程式設計計算最少加油次數。資料輸入 第1行有 2個正整數n和 k,表示汽車加滿油後可行駛 nkm,且旅途有 k個加油站。接...

汽車加油問題(貪心演算法)

汽車加油問題 time limit 1000 ms memory limit 65536 kib problem description 一輛汽車加滿油後可行駛n公里。旅途中有若干個加油站。設計乙個有效演算法,指出應在哪些加油站停靠加油,使沿途加油次數最少。並證明演算法能產生乙個最優解。對於給定的n...

汽車加油問題(貪心演算法)

汽車加油問題 time limit 1000 ms memory limit 65536 kib problem description 一輛汽車加滿油後可行駛n公里。旅途中有若干個加油站。設計乙個有效演算法,指出應在哪些加油站停靠加油,使沿途加油次數最少。並證明演算法能產生乙個最優解。對於給定的n...