演算法筆記 PAT1020 月餅

2021-10-03 17:32:21 字數 619 閱讀 3105

就不放原題,直接給自己的思路和**啦

思路:這道就就是典型的貪心演算法(當然在書中也是歸類到了貪心),以最大單價(即售價除以庫存量)為貪心點,所以要對屬性設定成double型別。所以需要建立乙個結構體陣列,裡面存有庫存和售價以及計算之後的單價,並對結構體陣列進行排序,之後與需求量進行列舉

#include

#include

//月餅

//建立乙個結構體陣列

struct yue

y[100];

//再寫乙個用來排序的cmp

intcmp

(yue a,yue b)

intmain()

for(i=

0;i)//然後在進行排序

sort

(y,y+n,cmp)

;//再開始列舉

int j=0;

double v=0;

//這個是總售價

while

(k)else

}//迴圈結束之後跳出輸出結果

printf

("%.2lf"

,v);

return0;

}

貪心演算法 PAT 1020 月餅

1020 月餅 25 分 月餅是中國人在中秋佳節時吃的一種傳統食品,不同地區有許多不同風味的月餅。現給定所有種類月餅的庫存量 總售價 以及市場的最大需求量,請你計算可以獲得的最大收益是多少。注意 銷售時允許取出一部分庫存。樣例給出的情形是這樣的 假如我們有 3 種月餅,其庫存量分別為 18 15 1...

PAT 1020 月餅 解題報告

1020 月餅 25分 月餅是中國人在中秋佳節時吃的一種傳統食品,不同地區有許多不同風味的月餅。現給定所有種類月餅的庫存量 總售價 以及市場的最大需求量,請你計算可以獲得的最大收益是多少。注意 銷售時允許取出一部分庫存。樣例給出的情形是這樣的 假如我們有 3 種月餅,其庫存量分別為 18 15 10...

PAT 1020 月餅 測試點3錯誤

簡單的貪心法,如下 1 include 2 include3 double amount 1000 4 double price 1000 5 using namespace std 6int getmax int n 11 return result 12 13int main 1422 for ...