Tenemos un conjunto de elementos $I = \{i_1, i_2, ..., i_n\}$ . Cada uno de estos elementos tiene lo que llamamos un p que es un número real. Queremos elegir un subconjunto de $I$ Llámalo $I'$ de tamaño $m$ (para algunos $m$ con $1 \le m \le n$ ) tal que la media de los p valores de los elementos en $I'$ se encuentra dentro de un rango especificado, $[p_l, p_u]$ . (Por ejemplo, podríamos exigir una media p entre 0,70 y 0,74). Además, queremos hacerlo de forma eficiente.
Esperamos hacerlo en tiempo O(n), pero cualquier algoritmo de tiempo polinómico es suficientemente bueno. Desde luego, no queremos limitarnos a probar todos los subconjuntos posibles de I de tamaño $m$ y luego comprobar si satisface la restricción del valor p medio.
Por último, haremos esto repetidamente y queremos que los subconjuntos elegidos sean una distribución aleatoria uniforme entre todos los subconjuntos posibles.
¿Hay alguna forma de hacerlo?