Menu
CoddyTech

Assign Cookies

Cada criança i tem um fator de gula g[i]: o menor tamanho de biscoito que a deixa satisfeita. Cada biscoito j tem um tamanho s[j]. Uma criança fica satisfeita quando recebe um biscoito cujo tamanho é pelo menos igual ao seu fator de gula. Cada criança recebe no máximo um biscoito, e cada biscoito vai para no máximo uma criança. Retorne o maior número de crianças que você consegue deixar satisfeitas.

Função

findContentChildren(g: integer-array, s: integer-array) → integer
ginteger-array
o fator de gulodice de cada criança, o menor tamanho de biscoito que ela aceita
sinteger-array
o tamanho de cada cookie
Retornainteger
o maior número de crianças que podem receber, cada uma, um biscoito pelo menos tão grande quanto seu fator de ganância

Restrições

  • 1 ≤ g.length, s.length ≤ 5000
  • 1 ≤ g[i], s[j] ≤ 105
  • Os dois arrays podem ter tamanhos diferentes, e nenhum deles está ordenado.

Exemplos

Entrada
g = [4, 2, 7]s = [3, 5, 1, 2]
Saída
2
Explicação
Ordenadas, as crianças querem 2, 4 e 7, e os biscoitos são 1, 2, 3 e 5. O biscoito 2 alimenta a criança que quer 2, e o biscoito 5 alimenta a criança que quer 4. Não sobra nada que alcance 7, então a resposta é 2.

lock icon+16 testes ocultos ao enviar

challenge icon

Para ir além

E se cada criança também tiver o maior biscoito que aceitará, de modo que um biscoito só caiba dentro de um intervalo? Para qual criança que está esperando cada biscoito deve ir, então?

Redefinir código
def findContentChildren(g, s):
    # Escreva o código aqui
Casos de teste

Caso 1

Caso 2

Entrada

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

Esperado

2