Estoy encontrando cuántos enteros bajo un límite, $L$ sólo tienen factores primos de un conjunto dado de números primos, $P$ . Los números que cumplen estas condiciones se llaman números n-suaves. (Nunca he utilizado conjuntos antes, así que siéntanse libres de corregir cualquier error que cometa). Tomemos, por ejemplo, $P = \left\{2, 3 \right\}$ y $L = 25$ Hay 10 números que son 3-suaves: 2, 3, 4, 6, 8, 9, 12, 16, 18, 24.
Estoy tratando de encontrar un método/algoritmo que encuentre fácilmente cuántos números n-suaves que hay para un determinado $P$ y $L$ . Aquí está mi trabajo hasta ahora:
Para empezar, un número de $P$ a cualquier potencia será n-suave siempre que sea < $L$ . Utilizando el mismo ejemplo anterior, esto incluiría las potencias de dos: 2, 4, 8, 16, y las potencias de tres: 3, 9. Usando la función piso y el logaritmo, puedo esencialmente decir cuántas potencias de un número hay que son menores o iguales a L. La cantidad total de estos números puede ser modelada con esta expresión:
Pero esto deja los otros números 6, 12, 18 y 24 de sobra. No sé cómo contabilizar estos números "sobrantes". ¿Alguien tiene alguna idea?