• 你可以假设胃口值为正。
• 一个小朋友最多只能拥有一块饼干。

Assume you are an awesome parent and want to give your children some cookies. But, you should give each child at most one cookie. Each child i has a greed factor gi, which is the minimum size of a cookie that the child will be content with; and each cookie j has a size sj. If sj >= gi, we can assign the cookie j to the child i, and the child i will be content. Your goal is to maximize the number of your content children and output the maximum number.

Note:

• You may assume the greed factor is always positive.
• You cannot assign more than one cookie to one child.

Input: [1,2,3], [1,1]

Output: 1

Explanation: You have 3 children and 2 cookies. The greed factors of 3 children are 1, 2, 3. And even though you have 2 cookies, since their size is both 1, you could only make the child whose greed factor is 1 content.You need to output 1.

Input: [1,2], [1,2,3]

Output: 2

Explanation: You have 2 children and 3 cookies. The greed factors of 2 children are 1, 2. You have 3 cookies and their sizes are big enough to gratify all of the children, You need to output 2.

```public class Program {

public static void Main(string[] args) {
var g = new int[] { 1, 2 };
var s = new int[] { 1, 2, 3 };

var res = findContentChildren(g, s);
Console.WriteLine(res);

}

public static int findContentChildren(int[] g, int[] s) {
//这是装箱问题的经典解法（贪心算法）
//装箱问题把所有货物按从大到小的顺序排序之后
//一趟扫描完成所有货物的装箱工作
//《数据结构与算法分析-C语言描述》第2版第10章
//中文版第263页，英文原版347页
//有关于此类问题的详细解法说明
//该书也分析了在什么时候下可以使用此解法获取最优解
//该题的基本思路是尽可能满足小胃口的孩子
//而不是大胃口的孩子，这样能更多的满足孩子的胃口
//记录结果
var count = 0;
//记录小孩胃口索引
var index = 0;
//排序小孩胃口数组
Array.Sort(g);
//排序饼干大小数组
Array.Sort(s);
//循环判断饼干是否满足小孩胃口
for(var i = 0; i < s.Length; i++) {
//如果饼干能满足小孩胃口
if(s[i] >= g[index]) {
//计数 +1
count++;
//索引超出小孩人数，退出
if(++index >= g.Length) break;
}
}
//输出结果
return count;
}

}```

`2`