题目:本来的意思是有几个人需要不同种类的有限个数饼干,每种饼干有不同个数,问能满足几个人。
参数是两个数组,第一个是要满足的人,第二组是有的饼干
思路:主要是满足人,所以只要不满足,饼干的数组继续往后,如果满足了一个,人的数组和饼干的数组一起往后走一个,不过不知道两个数组都先sort了算不算犯规。
刚刚又想到一个思路,就是只sort饼干数组,循环人的数组,只要数要小于最大的sort就result+1,如果result大于等于饼干的数组直接返回result。
先放出我通过了的代码:
public int findContentChildren(int[] g, int[] s) {
if( s.length==0 || g.length==0)return 0;
Arrays.sort(s);
Arrays.sort(g);
if(g[g.length-1]<s[0] )return 0;
int result=0;
int x=0,y=0;
while(x<g.length&&y<s.length){
if(g[x]<=s[y]){
result++;
x++;
y++;
}else y++;
}
return result;
}
其他人的代码和我一样就不贴出来了。