假設你是一位很棒的家長,想要給你的孩子們一些小餅乾。但是,每個孩子最多只能給一塊餅乾。
對每個孩子 i,都有乙個胃口值 g[i],這是能讓孩子們滿足胃口的餅乾的最小尺寸;並且每塊餅乾 j,都有乙個尺寸 s[j] 。如果 s[j]
>= g[i],我們可以將這個餅乾 j 分配給孩子 i ,這個孩子會得到滿足。你的目標是盡可能滿足越多數量的孩子,並輸出這個最大數值。
示例 1
:輸入: g =[1
,2,3
], s =[1
,1]輸出:
1解釋:
你有三個孩子和兩塊小餅乾,3個孩子的胃口值分別是:1,2
,3。雖然你有兩塊小餅乾,由於他們的尺寸都是1,你只能讓胃口值是1的孩子滿足。
所以你應該輸出1。
/*開始用乙個res變數來記錄結果,發現res是和i下標同步增長的,直接輸出i就行*/
public
intfindcontentchildren
(int
g,int[
] s)
else
}return i;
}//化簡**
public
intfindcontentchildren
(int
g,int[
] s)
return i;
}
貪心基礎 Assign Cookies
一 貪心基礎 assign cookies 假設你是一位很棒的家長,想要給你的孩子們一些小餅乾。但是,每個孩子最多只能給一塊餅乾。對每個孩子 i 都有乙個胃口值 g i 這是能讓孩子們滿足胃口的餅乾的最小尺寸 並且每塊餅乾 j 都有乙個尺寸 s j 如果 s j g i 我們可以將這個餅乾 j 分配...
演算法基礎( 演算法)
演算法基礎 演算法 hash演算法有兩種,即sha 1和md5演算法這裡先介紹md5演算法.md5產生乙個128位的hash值,在經過一寫初始樹立後,將明文分成了512位的塊,再將每一塊分成16個32位的子塊。演算法的輸出是4個32位的塊,連線起來構成128位的hash值。首先,將訊息填充到比512...
演算法 分治演算法
分治策略主要利用遞迴來解決問題,它包括以下三個步驟 分解 將問題分解為一與原問題類似並且比原問題規模更小的子問題 解決 當分解的子問題足夠小時,直接給出答案,否則用遞迴打方式求解 合併 將子問題的解合成原問題的解 下面考慮乙個簡單的利用分治演算法的歸併排序的例子 問題的形式化描述如下 輸入 a是 乙...