Algoritmo Karatsuba para una multiplicación rápida usando el algoritmo Divide and Conquer

Dadas dos strings binarias que representan el valor de dos enteros, encuentre el producto de dos strings. Por ejemplo, si la primera string de bits es «1100» y la segunda string de bits es «1010», la salida debe ser 120. Para simplificar, deje que la longitud de dos strings sea la misma y sea n. … Continue reading «Algoritmo Karatsuba para una multiplicación rápida usando el algoritmo Divide and Conquer»

Cuente el número de ocurrencias (o frecuencia) en una array ordenada – Part 1

  Dada una array ordenada arr[] y un número x, escriba una función que cuente las ocurrencias de x en arr[]. La complejidad de tiempo esperada es O (Inicio de sesión)  Ejemplos:  C++ // C++ program to count occurrences of an element #include<bits/stdc++.h> using namespace std;    // Returns number of times x occurs in … Continue reading «Cuente el número de ocurrencias (o frecuencia) en una array ordenada – Part 1»

Elemento máximo en una array ordenada y rotada

Dada una array ordenada arr[] de distintos elementos que se gira en algún punto desconocido, la tarea es encontrar el máximo de elementos en ella. Ejemplos:   Entrada: arr[] = {3, 4, 5, 1, 2}  Salida: 5 Entrada: arr[] = {1, 2, 3}  Salida: 3   Enfoque: una solución simple es atravesar la array completa y encontrar … Continue reading «Elemento máximo en una array ordenada y rotada»

Encuentra el resto cuando un número A elevado a N factorial se divide por P

Dados tres enteros A, N y P , la tarea es encontrar (A^(N!)) % P. Ejemplos: Entrada: A = 2, N = 1, P = 2 Salida: 0 Explicación: Como (2^(1!)) = 2  Por lo tanto, 2 % 2 será 0. Entrada: A = 3, N = 3, P = 2 Salida: 1 Enfoque ingenuo: … Continue reading «Encuentra el resto cuando un número A elevado a N factorial se divide por P»

Par de puntos más cercano | Implementación de O (inicio de sesión)

Tenemos una array de n puntos en el plano, y el problema es encontrar el par de puntos más cercano en la array. Este problema surge en varias aplicaciones. Por ejemplo, en el control del tráfico aéreo, es posible que desee controlar los aviones que se acercan demasiado, ya que esto puede indicar una posible … Continue reading «Par de puntos más cercano | Implementación de O (inicio de sesión)»

Encontrar la raíz cúbica de un número

Dado un número n, encuentre la raíz cúbica de n. Ejemplos:   Input: n = 3 Output: Cubic Root is 1.442250 Input: n = 8 Output: Cubic Root is 2.000000 Podemos usar la búsqueda binaria . Primero definimos el error e. Digamos 0.0000001 en nuestro caso. Los pasos principales de nuestro algoritmo para calcular la raíz … Continue reading «Encontrar la raíz cúbica de un número»

Encuentre MEX de cada subárbol en un árbol dado

Dado un árbol genérico que consta de N Nodes numerados de 0 a N – 1 que tiene su raíz en el Node 0 y una array val[] tal que el valor en cada Node está representado por val[i] , la tarea de cada Node es encontrar el valor de MEX de su subárbol. El … Continue reading «Encuentre MEX de cada subárbol en un árbol dado»

Exponenciación modular (recursiva)

Dados tres números a, b y c, necesitamos encontrar (a b ) % c Ahora, ¿por qué «% c» después de la exponenciación, porque a b será realmente grande incluso para valores relativamente pequeños de a, b y eso es un problema ? porque el tipo de datos del lenguaje en el que tratamos de … Continue reading «Exponenciación modular (recursiva)»

Número más pequeño con suma de dígitos dada y suma de cuadrados de dígitos

Dada suma de dígitos  y suma de cuadrados de dígitos  . Encuentre el número más pequeño con la suma de dígitos dada y la suma del cuadrado de los dígitos. El número no debe contener más de 100 dígitos. Escriba -1 si no existe tal número o si el número de dígitos es mayor a … Continue reading «Número más pequeño con suma de dígitos dada y suma de cuadrados de dígitos»

Exponenciación Modular de Números Complejos

Dados cuatro enteros A , B , K , M . La tarea es encontrar (A + iB) K % M que también es un número complejo. A + iB representa un número complejo. Ejemplos: Entrada: A = 2, B = 3, K = 4, M = 5 Salida: 1 + i*0 Entrada: A = … Continue reading «Exponenciación Modular de Números Complejos»