Saltar al contenido

La nota de la investigadora

Enunciado

El comité del observatorio va a repartir becas, y no quiere premiar solo a quien publica mucho ni a quien tiene un único artículo famoso. Por eso califica a cada investigadora con una nota que pide las dos cosas. Escribe una función que reciba citas, una lista de enteros de 0 en adelante (cuántas veces citaron cada uno de sus artículos; puede venir vacía), y regrese un entero: el número más grande h tal que tiene al menos h artículos con h citas o más cada uno.

Con [3, 0, 6, 1, 5] la nota es 3: tres artículos tienen 3 citas o más (el 3, el 6 y el 5). No llega a 4, porque solo dos tienen 4 o más.

Un solo artículo con 100 citas da 1, no 100. Sin artículos, o si ninguno tiene citas, la nota es 0.

Ejemplos

  • El del ejemplo

    [3, 0, 6, 1, 5] → 3

  • Cuatro artículos iguales

    [4, 4, 4, 4] → 4

  • Uno muy citado no sube la nota

    [25, 8, 5, 3, 3] → 3

  • Nadie los citó

    [0, 0, 0] → 0

  • Sin artículos

    [] → 0

Además de estas, el reto tiene pruebas ocultas que se revelan al enviar tu solución.

Empiezas con esto

Python

def nota(citas):
    pass

JavaScript

function nota(citas) {
}
Resolver este reto

Se abre en el navegador, con el editor y las pruebas. Este reto es del plan completo; los de O(1) y O(log n) son gratis.

Más retos de O(n log n)

Ver todos los retos →