luoguP1842奶牛玩雜技

2021-08-11 11:27:41 字數 616 閱讀 6100

解決方案:

1.貪心(不像是能用動歸做)

2.以什麼來貪心呢

3.重量,顯然不行

4.力量也不行

5.猜測:與重量和力量都有關,再分析樣例,發現是重量+力量

6.證明:設有a和b兩頭相鄰的牛(a在下,b在上)

7.若wa+sa8.交換a和b位置,設b上方牛總體重為w

9.a原:w+wb-sa b原:w-sb(w-sa)

10.顯然w+wa-sb11.證畢

12.注意結果有可能是負數(不然60分)

13.ac 奉上**

#include

#include

using

namespace

std;

struct cow

c[50002];

long

long ans=-2147483647,wt;

int n;

bool

cmp(cow a,cow b)

sort(c+1,c+n+1,cmp);

for(int i=n; i>=1; i--)

cout

0;} //為什麼是普及/提高-

P1842 奶牛玩雜技

題目鏈結 這道題目知道結論是比較好寫的,關鍵是結論是怎樣推出來的。我們先只考慮相鄰的兩個奶牛,設這兩個奶牛為 a 和 b 這兩個奶牛上面的奶牛總重量為 w 所以我們考慮 a 在上面的情況和 b 在上面的情況。a 在上面的情況 a 的壓扁指數為 w s a b 的壓扁指數為 w w a s b b 在...

題解 P1842 奶牛玩雜技

構造相鄰的兩頭牛,看能不能貪心,且看需要滿足什麼條件的時候才能貪心。設有相鄰的兩頭牛a,b,來討論一下在滿足什麼條件的的情況下a放在b上面比b放在a上面更優 設放在a,b上面的牛的總重為w i a放在b上面 a的壓扁值 w sa b的壓扁值 w wa sb ii b放在a上面 a的壓扁值 w wb ...

luogu P2619 奶牛工資

原題位置 這道題是個貪心,怎麼說是貪心呢,就是先選大的,後考慮小的 千萬不要把上句話的意思理解歪了,一開始我就理解歪了,然後華麗麗地tle了 其實就是for,然後如果當前這個值可以被選,就選到不能再選這個值為止 還有乙個小技巧,就是我們定義乙個值,等於c,然後用這個值減,知道小於等於0,這樣子比一直...