我對貪心的理解就是通過每一步的最優解找的整體的最優解。往往通過乙個迴圈語句即o(n
)的複雜度來解決問題,所以資料上總說貪心演算法往往是所有演算法中最快的。另外貪心往往用到排序,所以
sort
的用法要記牢,不管對陣列還是結構體。。
具體到這個題就要先依據單價進行排序,這裡就要求要把資料儲存為結構體形式。然後從**最低的牛奶開始買,直到滿足需求。
在對最後超出的處理時,要以為判斷依據,否則即滿足需求時,只需要加上需要的部分。
#include#includeusing namespace std;
struct farmer
p[5010];
bool cmp(farmer x,farmer y)
sort(p,p+m,cmp);
int maxmoney=0,maxmilk=0;
for(i=0;i
牛客演算法周周練13
a 最小生成樹 小 a 有一張 n 個點的帶權無向圖,這張無向圖非常特別,首先第 i 個點有乙個點權 ai,之後這張無向圖是一張完全圖,且邊 u,v 的權值為 au 現在小 a 想找乙個這張圖的邊權之和最小的生成樹,需要你來幫幫他 題解 每個點都和最小那個點連線形成的樹即最小生成樹 注意 使用長整形...
牛客真題(13) 迴圈數比較
今天繼續刷牛客真題,比較兩個迴圈數的大小。分析 既然是兩個迴圈數,那麼肯定存在大數的情況,因此如果採用int型表示的話,那就會出現溢位的情況,因此只有用字串的形式表示。然後比較大小的時候,可以首先通過兩個迴圈數的長度進行判斷,自然迴圈數的長度大的值肯定也大,然後遇到長度相等的時候,需要比較兩個數的大...
牛客小白月賽13 補題(ACDG)
a 通過已經給的 打表找規律,偶數輸出 1,奇數輸出1 includeusing namespace std int main void huaj ll a,ll b int main qianz 0 0 houz n 1 0 qianz 1 mp 1 houz n mp n for i 2 i n...