1.题目描述
2.思路讲解
很经典的贪心问题,怎么贪心?我就想让最小的饼干尺寸满足孩子的饭量,这就是我们解决这个题目的思路
3.代码展示
int cmp(const void* a,const void* b)//调快排的函数
{
return *(int*)a-*(int*)b;
}
int findContentChildren(int* g, int gSize, int* s, int sSize){
qsort(g,gSize,sizeof(g[0]),cmp);//g是孩子胃口,从小到大排序
qsort(s,sSize,sizeof(s[0]),cmp);//s是饼干尺寸,从小到大排序
int count=0;//计数量
int i,j;
for(int i=0,j=0;i<gSize&&j<sSize;i++,j++)//还有继续比呗,这条件就得这么写
{
while(j<sSize&&g[i]>s[j])//我们从头开始遍历,当饼干没法喂饱当前孩子,就让饼干变大
{
j++;//让饼干变大
}
if(j<sSize)//跳出循环意味着当前最小饼干满足了那个孩子饭量
{
count++;//加呗
}
}
return count;//做完以后返回就行
}
4.总结
题目难度不算大,了解思想就能轻松做出,最近几天怕是刷不了几道题目了,大一的第一次期末来临,要好好备战,但最好能保证每天做一题