반응형
SMALL
child list가 있고 cookie list가 있다.
child list의 각 값은 쿠키를 몇 개 이상 먹어야 만족하는지 적혀있다. 다시 말해서 쿠키를 먹어야하는 최소의 갯수다. 그리고 cookie list는 쿠키 개수가 각각 들어있다.
child list index i와 cookie list index j가 있을 때, child[i] >= cookie[j]가 되는 child의 수를 구하는 문제다.
문제에서 아이는 g[i] 리스트에 들어있고 쿠키는 s[j] 리스트에 들어있다.
먼저 각 리스트를 오름차순으로 정렬하고, 쿠키 하나를 정해놓고 그것이 아이가 원하는 값보다 크거나 같으면 아이 index을 하나씩 늘려간다. 그리고 원하는 값이 없으면 쿠키 index를 하나씩 늘려간다.
결과적으로 아이 index 값을 늘린 값을 리턴한다.
class Solution:
def findContentChildren(self, g: List[int], s: List[int]) -> int:
g.sort()
s.sort()
child_i = cookie_j = 0
while child_i < len(g) and cookie_j < len(s):
if s[cookie_j] >= g[child_i]:
child_i += 1
cookie_j += 1
return child_i
반응형
LIST
'[ leetcode ]' 카테고리의 다른 글
70. Climbing Stairs (0) | 2022.12.14 |
---|---|
53. Maximum Subarray (0) | 2022.12.13 |
509. Fibonacci Number (0) | 2022.12.11 |
406. Queue Reconstruction by Height (0) | 2022.12.03 |
122. Best Time to Buy and Sell Stock 2 (0) | 2022.12.02 |