貪心刷題(5日計畫)第二天

2021-10-16 09:08:30 字數 1634 閱讀 9923

很容易理解占有兩個組的盒子,減去糖果數可以使吃掉的糖果數最少。

但第乙個盒子可能大於x,則剛開始的時候就需要減去。

看到這個題目,可以想到肯定第一反應是要比較最高和最低的差。

然後可以進行排序。然後分別將最低峰和最高峰這個區間內的高度a作為最低的高度,其他的高度在a+17內

//(萬能庫)

struct pxx[

2000000];

bool

cmp(px x,px y)

using

namespace std;

intmain()

} cout<

//(輸出)

return0;

//(功德圓滿)

}##- p1610 鴻山洞的燈

排序+比較

可以這樣判斷p[i+1]-p[i-1]<=dist 滿足的話,則熄滅中間的p[i]。然後就可以把p[i-1]往前移,即p[i]=p[i-1]。

然後又繼續判斷三盞燈。

可以按脂肪排序,然後用乙個陣列來標記每個種類用掉的份數。

#include

using

namespace std;

struct perp[

10005];

intcmp

(per a,per b)

intmain()

} cout<

return0;

}

leetcode第二天刷題

給定兩個大小為 m 和 n 的有序陣列 nums1 和 nums2。請你找出這兩個有序陣列的中位數,並且要求演算法的時間複雜度為 o log m n 你可以假設 nums1 和 nums2 不會同時為空 看到這個題目第乙個想法就是用直接合併兩個陣列然後取中位數的方法。要注意的就是幾個陣列為空的情況需...

力扣刷題第二天

給你乙個陣列 candies 和乙個整數 extracandies 其中 candies i 代表第 i 個孩子擁有的糖果數目。對每乙個孩子,檢查是否存在一種方案,將額外的 extracandies 個糖果分配給孩子們之後,此孩子有 最多 的糖果。注意,允許有多個孩子同時擁有 最多 的糖果數目。示例...

牛客刷題總結(第二天)

int a 5 int ptr int a 1 a 代表的是int 每次步長為乙個int a 代表的是 int 每次步長為所指向的陣列的大小 此時ptr指向陣列a最後乙個位置的下乙個位置 vector erase以後,itor已經指向下乙個元素了,不應該執行itor 任何型別指標都可以賦值給void...