455. Asignar cookies [fácil]

455. Problema de asignación de cookies

Descripción del problema

Suponga que es un gran padre y quiere darles galletas a sus hijos. Sin embargo, cada niño solo puede dar una galleta como máximo.

Para cada niño i, hay un valor de apetito g [i], que es el tamaño más pequeño de galleta que puede satisfacer el apetito de los niños, y cada galleta j tiene un tamaño s [j]. Si s [j]> = g [i], podemos asignar esta cookie j al niño i, y este niño quedará satisfecho. Su objetivo es satisfacer a tantos niños como sea posible y generar este valor máximo.

Ejemplo 1:

输入: g = [1,2,3], s = [1,1]
输出: 1
解释: 
你有三个孩子和两块小饼干,3个孩子的胃口值分别是:1,2,3。
虽然你有两块小饼干,由于他们的尺寸都是1,你只能让胃口值是1的孩子满足。
所以你应该输出1。

Ejemplo 2:

输入: g = [1,2], s = [1,2,3]
输出: 2
解释: 
你有两个孩子和三块小饼干,2个孩子的胃口值分别是1,2。
你拥有的饼干数量和尺寸都足以让所有孩子满足。
所以你应该输出2.

inmediato:

1 <= g.length <= 3 * 104
0 <= s.length <= 3 * 104
1 <= g[i], s[j] <= 231 - 1

respuesta

Para que el niño con el menor apetito sea el primero en quedar satisfecho, debemos asignar galletas que sean mayores o iguales al apetito del niño y lo más pequeñas posible para el niño.
Ideas:
1. Clasifique las galletas y los niños de pequeñas a grandes
. 2. Recorrido del bucle. Cuando el apetito "= el tamaño de la galleta, es una solución local óptima para este problema.
3. Al final del bucle, calcule la cantidad de niños que cumplen con la condición del ciclo (cantidad de niños en el ciclo) o alguna de las cookies se ha ido)

Código

class Solution {
    
    
    public int findContentChildren(int[] g, int[] s) {
    
    
        //贪心问题
        // 尽可能满足较多数量的孩子
        //子问题 :每次让胃口小的孩子先满足  找到能够让胃口小孩子满足的最小的饼干
        //从小到大排序
        Arrays.sort(g);
        Arrays.sort(s);
        //双指针
        int child=0;
        int cookie=0;
        while(child < g.length && cookie <s.length ){
    
    
            if(s[cookie] >= g[child]){
    
    
                ++child;
            }
            //cookie 总要后移
            ++cookie;
        }
        return child;
    }
}

Supongo que te gusta

Origin blog.csdn.net/qq_37747189/article/details/115047517
Recomendado
Clasificación