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 read • Q2BSTUDIO Team

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.

A BREAK?

Play for a moment before you go

OUR SERVICES

How we can help you

Artificial intelligence

AI agents, chatbots, and intelligent assistants that automate tasks and serve your customers 24/7 to improve the efficiency of your business.

More info

Software Development

Web, mobile, and desktop applications, intranets, e-commerce, SaaS, and management platforms designed for your company's specific needs.

More info

Cloud services

Migration, infrastructure, managed hosting, high availability, and security on Microsoft Azure and Amazon Web Services to help your business scale without limits.

More info

Cybersecurity and pentesting

Security audits, penetration testing and protection of applications, data and infrastructure on-premise and cloud, with ethical hacking and regulatory compliance.

More info

Business Intelligence

Dashboards and data analysis with Power BI: we integrate your sources, design dashboards and KPIs and turn your data into decisions.

More info

Process automation

We automate repetitive tasks and connect your applications with n8n, Power Automate, Make, and RPA, eliminating manual work and increasing productivity.

More info

Training for Companies

We train your teams in technology with criteria: web development, databases, Git, best practices and security, automation with n8n, artificial intelligence for companies and creation of AI solutions with Azure AI Foundry.

More info

Code Auditing

We audit the code that you, your team or an AI create: we tell you what is good and what to improve, we secure it and make it ready for production, web or app.

More info

AI Image Generation

We create for you the images that your business needs with artificial intelligence: product, networks, advertising, illustration and avatars. You tell us what you want and we deliver it ready to use.

More info

AI Video Generation

We create videos with artificial intelligence for you: promotional, networking, virtual presenters, dubbing and animations. You tell us the idea and we will deliver it assembled and ready to publish.

More info

AI Conversational Avatars

We create conversational avatars with AI – digital humans with a face and voice – that serve your customers and teams with the knowledge of your company, on your website, interactive monitors, WhatsApp or Teams.

More info

Online Marketing and AI

Google Ads, Meta Ads, LinkedIn Ads and AI Engine Positioning (GEO/AEO): we attract customers and make your brand appear where they search for you, also on ChatGPT, Gemini and Perplexity.

More info

Do you have a project in mind?

Tell us your vision and we'll turn it into a software solution. Whatever the scope, we make your idea real.

Live Chat