Menu
CoddyTech

Assign Cookies

Każde dziecko i ma współczynnik łakomstwa g[i]: najmniejszy rozmiar ciastka, który je zadowoli. Każde ciastko j ma rozmiar s[j]. Dziecko jest zadowolone, gdy dostanie jedno ciastko, którego rozmiar jest co najmniej równy jego współczynnikowi łakomstwa. Każde dziecko dostaje najwyżej jedno ciastko, a każde ciastko trafia do najwyżej jednego dziecka. Zwróć maksymalną liczbę dzieci, które możesz zadowolić.

Funkcja

findContentChildren(g: integer-array, s: integer-array) → integer
ginteger-array
współczynnik zachłanności każdego dziecka, najmniejszy rozmiar ciastka, który akceptuje
sinteger-array
rozmiar każdego ciasteczka
Zwracainteger
największa liczba dzieci, z których każde może dostać ciastko co najmniej tak duże, jak wynosi jego współczynnik łakomstwa

Ograniczenia

  • 1 ≤ g.length, s.length ≤ 5000
  • 1 ≤ g[i], s[j] ≤ 105
  • Tablice mogą mieć różną długość i żadna z nich nie jest posortowana.

Przykłady

Wejście
g = [4, 2, 7]s = [3, 5, 1, 2]
Wyjście
2
Wyjaśnienie
Po posortowaniu dzieci chcą odpowiednio 2, 4 i 7, a ciasteczka mają rozmiary 1, 2, 3 i 5. Ciasteczko o rozmiarze 2 zaspokaja dziecko, które chce 2, a ciasteczko o rozmiarze 5 zaspokaja dziecko, które chce 4. Nie ma już ciasteczka wystarczająco dużego dla dziecka, które chce 7, więc odpowiedź to 2.

lock icon+16 ukrytych testów przy wysłaniu

challenge icon

Pytanie dodatkowe

A co, jeśli każde dziecko ma też największe ciastko, które zaakceptuje, więc ciastko pasuje tylko w określonym przedziale? Któremu czekającemu dziecku należy wtedy dać każde ciastko?

Zresetuj kod
def findContentChildren(g, s):
    # Wpisz kod tutaj
Przypadki testowe

Przypadek 1

Przypadek 2

Wejście

g = [4, 2, 7]
s = [3, 5, 1, 2]

Oczekiwane

2