給你乙個陣列 candies 和乙個整數 extracandies ,其中 candies[i] 代表第 i 個孩子擁有的糖果數目。
對每乙個孩子,檢查是否存在一種方案,將額外的 extracandies 個糖果分配給孩子們之後,此孩子有 最多 的糖果。注意,允許有多個孩子同時擁有 最多 的糖果數目。
示例 1:
輸入:candies = [2,3,5,1,3], extracandies = 3
輸出:[true,true,true,false,true]
解釋:孩子 1 有 2 個糖果,如果他得到所有額外的糖果(3個),那麼他總共有 5 個糖果,他將成為擁有最多糖果的孩子。
孩子 2 有 3 個糖果,如果他得到至少 2 個額外糖果,那麼他將成為擁有最多糖果的孩子。
孩子 3 有 5 個糖果,他已經是擁有最多糖果的孩子。
孩子 4 有 1 個糖果,即使他得到所有額外的糖果,他也只有 4 個糖果,無法成為擁有糖果最多的孩子。
孩子 5 有 3 個糖果,如果他得到至少 2 個額外糖果,那麼他將成為擁有最多糖果的孩子。
示例 2:
輸入:candies = [4,2,1,1,2], extracandies = 1
輸出:[true,false,false,false,false]
解釋:只有 1 個額外糖果,所以不管額外糖果給誰,只有孩子 1 可以成為擁有糖果最多的孩子。
示例 3:
輸入:candies = [12,1,12], extracandies = 10
輸出:[true,false,true]
先找最大值,再遍歷加額外的糖果判斷是否等於或者超過最大值。
class solution
for(
auto num : candies)
return ret;}}
;
這裡使用了vector模版,vector模版是自動分配記憶體,效能消耗比較高。還有使用了auto語法,從candies裡取出每乙個人的糖果數量。auto是在編譯的時候推斷變數型別,應該會增加編譯時間。
go的思路差不多,沒什麼特別語法不寫了
leetcode第二天刷題
給定兩個大小為 m 和 n 的有序陣列 nums1 和 nums2。請你找出這兩個有序陣列的中位數,並且要求演算法的時間複雜度為 o log m n 你可以假設 nums1 和 nums2 不會同時為空 看到這個題目第乙個想法就是用直接合併兩個陣列然後取中位數的方法。要注意的就是幾個陣列為空的情況需...
牛客刷題總結(第二天)
int a 5 int ptr int a 1 a 代表的是int 每次步長為乙個int a 代表的是 int 每次步長為所指向的陣列的大小 此時ptr指向陣列a最後乙個位置的下乙個位置 vector erase以後,itor已經指向下乙個元素了,不應該執行itor 任何型別指標都可以賦值給void...
課上洛谷刷題第二天
今天,主講老師有事去了,換了個代課老師來上課。但是有些同學這就開始八卦了起來 本來這個班的主講老師並不是現在的主講老師的,可是原來的主講老師有事,找了個代課老師來上課。第二節課,同學們依然沒有見到他們的主講老師,代課老師說他去談戀愛不知道幹嘛了,自己就變成了主教 老師。而這節課主教老師又有事去了,會...