【汽車加油問題】一輛汽車加滿油後可以行駛n千公尺。旅途中有k個加油站。若要使沿途的加油次數最少,設計乙個有效的演算法,指出應在那些加油站停靠加油。
資料輸入:由檔案input.txt 給出輸入資料。第一行有2個正整數n和k,表示汽車加滿油後可行駛nkm,且旅途中有k個加油站。接下來1行中,有k+1個整數,表示第k個加油站與第k-1個加油站之間的距離。第0個加油站表示出發地,汽車已加滿油。第k+1個加油站表示目的地。
結果輸出: 將程式設計計算出的最少加油次數輸出到檔案ouput.txt。如果無法到達目的地,則輸出「no solution」。
輸入檔案示例 輸出檔案示例
input.txt output.txt
7 7 4
1 2 3 4 5 1 6 6
要求:
採用貪心演算法,程式設計計算並輸出最少加油次數,以及指出應在那些加油站停靠加油。
#include
void greedy(int a,int n,int k)
}fprintf(fpwrite,"在這些加油站停靠加油:");
for(int j=0,s=0;j<=k;j++)
}fprintf(fpwrite,"\n最少加油次數:%d\n",num);
fclose(fpwrite);
}int main()
新建input.txt和output.txt,然後就執行結果就可以在output.txt中看到。 汽車加油問題
time limit 1000ms memory limit 65536k 有疑問?點這裡 一輛汽車加滿油後可行駛n公里。旅途中有若干個加油站。設計乙個有效演算法,指出應在哪些加油站停靠加油,使沿途加油次數最少。並證明演算法能產生乙個最優解。對於給定的n和k個加油站位置,計算最少加油次數。輸入資料的...
汽車加油問題
汽車加油問題 一輛汽車加滿油後可以行駛n公里,旅途中有加油站,設計乙個有效演算法,指出應在哪些加油站停靠加油,使沿途加油次數最少。測試用例 7 7 n k 1 2 34 5 1 6 6 第k個加油站與第k 1個加油站之間的距離,其中第乙個代表起點,最後乙個代表終點。輸出 4 最少加油次數 解 汽車加...
汽車加油問題
time limit 1000 ms memory limit 65536 kib submit statistic problem description 一輛汽車加滿油後可行駛n公里。旅途中有若干個加油站。設計乙個有效演算法,指出應在哪些加油站停靠加油,使沿途加油次數最少。並證明演算法能產生乙個...