先对量列表排序,然后设置双指针,状态转移为sj>=gi,则i,j加1并人数加1,否则i+1,不加人数。边界加0:
class Solution:
def findContentChildren(self, g: List[int], s: List[int]) -> int:
i=j=0
g.sort()
s.sort()
def d(i,j,g,s):
if i>=len(g) or j>=len(s):
return 0
if s[j]>=g[i]:
return 1+d(i+1,j+1,g,s)
else:
return d(i,j+1,g,s)
return d(0,0,g,s)