Sort the children's greed and cookie size in ascending order. Then see if the smallest cookie at position `s[j]`

will satisfy the least greedy child at position `g[i]`

. If that cookie does NOT satisfy this child, then that cookie will also NOT satisfy a more greedy child, so continue moving onto the next largest cookie until the least greedy child is satisfied. Then move onto the next least greedy child and repeat.

```
class Solution{
public:
int findContentChildren(vector<int>& g, vector<int>& s){
sort(g.begin(), g.end());
sort(s.begin(), s.end());
int res=0, j=0;
for (int i=0; i < g.size(); i++){
while (j < s.size() && g[i] > s[j]){ j++; }
if (j < s.size()) { res++; j++; }
}
return res;
}
};
```