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

2021-09-27 10:08:07 字數 1339 閱讀 2940

汽車加油問題

time limit: 1000 ms memory limit: 65536 kib

problem description

一輛汽車加滿油後可行駛n公里。旅途中有若干個加油站。設計乙個有效演算法,指出應在哪些加油站停靠加油,使沿途加油次數最少。並證明演算法能產生乙個最優解。

對於給定的n和k個加油站位置,計算最少加油次數。

input

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

output

將計算出的最少加油次數輸出。如果無法到達目的地,則輸出「no solution!」。

sample input

7 7

1 2 3 4 5 1 6 6

sample output

4思路:把距離輸入乙個陣列,之後迴圈檢測,如果距離大於最大的行駛數n,直接結束輸出「no solution」(說到這我就來氣,交了3次,都是在這裡沒有注意,哎,真呆),如果都滿足,進入下乙個迴圈。s記錄行駛數,如果已經行駛的+馬上要行駛的<= n,繼續行駛,如果不滿足,就要在這一站停止加油,num記錄次數。之後s = 到下一站的距離,繼續這樣直到最後。

汽車加油問題 貪心演算法

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

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

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

貪心演算法之汽車加油問題

場景 一 一輛汽車加滿油後可行駛n公里。旅途中有若干個加油站。應在哪些加油站停靠加油,使沿途加油次數最少。汽車行駛過程中,不到萬不得已不加油,應走到自己能走到並且離自己最遠的那個加油站,在那個站加滿油後,將那個加油站作為新的起點,再按照同樣的方法遞迴下去。場景 二 在乙個固定長度的路線上,有多個加油...