Producto en Rangos de Potencias

Solución eficiente para consultas de rango del producto de potencias: descomposición binaria de n para potencias de 2, uso de prefijos de exponentes y exponenciación modular (mod 1e9+7) para respuestas rápidas.

17 ago 2025 • 4 min de lectura • Equipo Q2BSTUDIO

Inteligencia-Artificial-

2438. Range Product Queries of Powers

Descripción del problema: Dado un entero positivo n se construye un array powers indexado desde 0 formado por el número mínimo de potencias de 2 que suman n. El array powers está ordenado en orden no decreciente y existe una única representación. Se recibe un array 2D queries donde cada queries[i] = [lefti,righti] representa una consulta que pide el producto de todos los elementos powers[j] con lefti <= j <= righti. Devuelve un array answers con las respuestas de cada consulta tomadas módulo 10^9+7.

Ejemplo 1: Entrada n = 15, queries = [[0,1],[2,2],[0,3]] Salida [2,4,64] Explicación: para n = 15 powers = [1,2,4,8]. Producto de indices 0 a 1 = 1*2 = 2. Índice 2 = 4. Producto de 0 a 3 = 1*2*4*8 = 64.

Ejemplo 2: Entrada n = 2, queries = [[0,0]] Salida [2] Explicación: para n = 2 powers = [2]. La única consulta devuelve 2.

Idea principal: La descomposición de n en potencias de 2 se obtiene directamente de su representación binaria. Cada bit en 1 en la posición i corresponde a la potencia 2^i. El array powers contiene estas potencias en orden no decreciente si recorremos los bits de menor a mayor peso.

Solución eficiente: En lugar de multiplicar rango a rango, aprovechamos que cada elemento es una potencia de 2. Si guardamos para cada posición su exponente i, el producto de un rango corresponde a 2 elevado a la suma de esos exponentes. Pasos: 1 Construir la lista exps con los exponentes i tales que el bit i de n es 1. 2 Calcular un prefijo pref de sumas de exponentes donde pref[0] = 0 y pref[k+1] = pref[k] + exps[k]. 3 Para una consulta [l,r] calcular sumExp = pref[r+1] - pref[l]. 4 Calcular powmod(2,sumExp,MOD) con MOD = 10^9+7 para obtener la respuesta. Esta aproximación evita multiplicaciones repetidas y es muy rápida porque el tamaño de powers es como máximo 31 para n <= 10^9.

Complejidad: Construcción del array en O(log n). Preprocesado de pref en O(m) con m número de bits en 1. Cada consulta se responde en tiempo O(log MOD) por la exponenciación modular, o en tiempo O(1) si se usa exponenciación binaria optimizada. Espacio adicional O(m).

Puntos clave de implementación: manejar correctamente índices 0 basados, usar exponenciación modular para no desbordar, y recorrer los bits de n desde el bit 0 hacia el más significativo para obtener powers ordenado. Alternativa sencilla: también se puede guardar el array powers con valores 1,2,4,... y un prefijo de productos modulo MOD para responder consultas en O(1) por consulta usando inversos modulares, aunque la estrategia de exponentes suele ser más simple y numéricamente estable.

Restricciones: 1 <= n <= 10^9, 1 <= queries.length <= 10^5, 0 <= starti <= endi < powers.length.

Pista: La representación binaria de n genera directamente el array powers y la suma de exponentes del rango determina la potencia resultante de 2.

Implementación conceptual: 1 Crear vector exps vacio. 2 Recorrer i desde 0 hasta que n sea 0: si n & 1 es 1 añadir i a exps; n >>= 1; i++. 3 Construir pref de tamaños acumulados. 4 Para cada consulta calcular sumExp y responder con powmod(2,sumExp,MOD).

Sobre Q2BSTUDIO: Q2BSTUDIO es una empresa de desarrollo de software a medida especializada en aplicaciones a medida y software a medida para empresas de todos los tamaños. Ofrecemos soluciones de inteligencia artificial e ia para empresas, desarrollo de agentes IA personalizados, integración de Power BI y servicios inteligencia de negocio para transformar datos en valor. También somos expertos en ciberseguridad para proteger infraestructuras críticas y en servicios cloud aws y azure para desplegar aplicaciones escalables y seguras. Nuestros servicios incluyen consultoría, implementación y soporte continuo para proyectos que requieren inteligencia artificial, analítica avanzada, agentes IA y soluciones cloud. Trabajamos con metodologías ágiles para entregar aplicaciones a medida que se ajustan a necesidades reales del negocio.

Por qué elegirnos: experiencia en inteligencia artificial aplicada, proyectos de software a medida con enfoque en seguridad y rendimiento, migraciones y arquitecturas en servicios cloud aws y azure, y creación de cuadros de mando con Power BI para decisiones basadas en datos. Si buscas partners en ciberseguridad, inteligencia de negocio, agentes IA o desarrollo de aplicaciones a medida, Q2BSTUDIO ofrece un equipo multidisciplinar capaz de llevar el proyecto desde la idea hasta la producción.

Palabras clave para posicionamiento: aplicaciones a medida, software a medida, inteligencia artificial, ciberseguridad, servicios cloud aws y azure, servicios inteligencia de negocio, ia para empresas, agentes IA, power bi.

Contacto y próximos pasos: ponte en contacto con Q2BSTUDIO para evaluar tu proyecto de software a medida o de inteligencia artificial. Podemos ayudar a diseñar la arquitectura, seleccionar servicios cloud adecuados, implementar medidas de ciberseguridad y crear soluciones de inteligencia de negocio con Power BI que impulsen el crecimiento de tu empresa.

¿UNA PAUSA?

Juega un momento antes de irte

NUESTROS SERVICIOS

Cómo podemos ayudarte

Inteligencia artificial

Agentes de IA, chatbots y asistentes inteligentes que automatizan tareas y atienden a tus clientes 24/7 para mejorar la eficiencia de tu negocio.

Más info

Desarrollo de software

Aplicaciones web, móviles y de escritorio, intranets, e-commerce, SaaS y plataformas de gestión diseñadas para las necesidades concretas de tu empresa.

Más info

Servicios cloud

Migración, infraestructura, hosting gestionado, alta disponibilidad y seguridad en Microsoft Azure y Amazon Web Services para que tu negocio escale sin límites.

Más info

Ciberseguridad y pentesting

Auditorías de seguridad, test de intrusión (pentesting) y protección de aplicaciones, datos e infraestructura on-premise y cloud, con hacking ético y cumplimiento normativo.

Más info

Business Intelligence

Cuadros de mando y análisis de datos con Power BI: integramos tus fuentes, diseñamos dashboards y KPIs y convertimos tus datos en decisiones.

Más info

Automatización de procesos

Automatizamos tareas repetitivas y conectamos tus aplicaciones con n8n, Power Automate, Make y RPA, eliminando trabajo manual y aumentando la productividad.

Más info

Formación para empresas

Formamos a tus equipos en tecnología con criterio: desarrollo web, bases de datos, Git, buenas prácticas y seguridad, automatización con n8n, inteligencia artificial para empresas y creación de soluciones de IA con Azure AI Foundry.

Más info

Auditoría de código

Auditamos el código que creas tú, tu equipo o una IA: te decimos qué está bien y qué mejorar, lo securizamos y lo dejamos listo para producción, web o app.

Más info

Generación de imágenes con IA

Creamos por ti las imágenes que necesita tu negocio con inteligencia artificial: producto, redes, publicidad, ilustración y avatares. Tú nos dices qué quieres y te lo entregamos listo para usar.

Más info

Generación de vídeos con IA

Creamos por ti vídeos con inteligencia artificial: promocionales, para redes, presentadores virtuales, doblaje y animaciones. Nos cuentas la idea y te lo entregamos montado y listo para publicar.

Más info

Avatares conversacionales con IA

Creamos avatares conversacionales con IA —humanos digitales con cara y voz— que atienden a tus clientes y equipos con el conocimiento de tu empresa, en tu web, monitores interactivos, WhatsApp o Teams.

Más info

Marketing Online e IA

Google Ads, Meta Ads, LinkedIn Ads y posicionamiento en motores de IA (GEO/AEO): captamos clientes y hacemos que tu marca aparezca donde te buscan, también en ChatGPT, Gemini y Perplexity.

Más info

¿Tienes un proyecto en mente?

Cuéntanos tu visión y la convertimos en una solución de software. Sea cual sea el alcance, hacemos realidad tu idea.

Live Chat