洛谷 P1090 合併果子

2022-05-16 11:55:44 字數 469 閱讀 2297

思路:每次取最小的兩堆合併,做法是每次合併完排序,取最小的兩個,優先佇列由於每次push後是自動排序,所以用優先佇列寫很方便

**:

1 #include2

#define inf 0x3f3f3f3f

3 typedef long

long

ll;4

const

int m = int(1e5)*2 + 5;5

using

namespace

std;

6int

n;7 ll ans = 0

;8 priority_queue, greater >q;910

intmain()

1121 cout << ans <22return0;

23 }

備註:用優先佇列寫就是道水題,雖然在這之前我完全不會用orz。看了這篇部落格後我頓悟了->這篇,總結得很好

洛谷 P1090 合併果子

題目描述 在乙個果園裡,多多已經將所有的果子打了下來,而且按果子的不同種類分成了不同的堆。多多決定把所有的果子合成一堆。每一次合併,多多可以把兩堆果子合併到一起,消耗的體力等於兩堆果子的重量之和。可以看出,所有的果子經過n 1次合併之後,就只剩下一堆了。多多在合併果子時總共消耗的體力等於每次合併所耗...

洛谷 P1090 合併果子

在乙個果園裡,多多已經將所有的果子打了下來,而且按果子的不同種類分成了不同的堆。多多決定把所有的果子合成一堆。每一次合併,多多可以把兩堆果子合併到一起,消耗的體力等於兩堆果子的重量之和。可以看出,所有的果子經過 n 1n 1次合併之後,就只剩下一堆了。多多在合併果子時總共消耗的體力等於每次合併所耗體...

洛谷 P1090 合併果子

題目鏈結 題目描述 在乙個果園裡,多多已經將所有的果子打了下來,而且按果子的不同種類分成了不同的堆。多多決定把所有的果子合成一堆。每一次合併,多多可以把兩堆果子合併到一起,消耗的體力等於兩堆果子的重量之和。可以看出,所有的果子經過 n 1n 1 次合併之後,就只剩下一堆了。多多在合併果子時總共消耗的...