Contar inversiones de tamaño k en una array dada

Dada una array de n enteros distintos y un entero k. Averigüe el número de subsecuencias de tal que , y . En otras palabras, genera el número total de inversiones de longitud k. Ejemplos: Input : a[] = {9, 3, 6, 2, 1}, k = 3 Output : 7 The seven inversions are {9, … Continue reading «Contar inversiones de tamaño k en una array dada»

Número de formas de cambiar la array de modo que el elemento más grande sea LCM de la array

Dada una array arr[] , la tarea es contar el número de arrays únicas que se pueden formar actualizando los elementos de la array dada a cualquier elemento en el rango [1, arr[i]] tal que el Mínimo común múltiplo de la array actualizada es igual al elemento máximo. Ejemplos: Entrada: arr[] = {6, 3} Salida: … Continue reading «Número de formas de cambiar la array de modo que el elemento más grande sea LCM de la array»

Longitud máxima de los mismos subarreglos indexados de dos arreglos dados que satisfacen la condición dada

Dados dos arreglos arr[] y brr[] y un entero C , la tarea es encontrar la longitud máxima posible, digamos K , de los mismos subarreglos indexados tal que la suma del elemento máximo en el subarreglo de longitud K en brr[ ] con el producto entre K y la suma del subarreglo de longitud … Continue reading «Longitud máxima de los mismos subarreglos indexados de dos arreglos dados que satisfacen la condición dada»

Conteo de diferentes grupos usando Graph

Dado un gráfico con N Nodes que tienen valores P o M . También dados K ​​pares de enteros como (x, y) que representan los bordes en el gráfico, de modo que si a está conectado a b y b está conectado a c , entonces a y c también estarán conectados.  Un solo componente … Continue reading «Conteo de diferentes grupos usando Graph»

Recuperación vertical y horizontal (MRT) en cintas

Requisito previo: almacenamiento óptimo en cintas  Se le entregan cintas[] de diferentes tamaños y registros[] de diferentes volúmenes. La tarea es llenar los volúmenes en cintas horizontal o verticalmente de modo que se minimice el tiempo de recuperación. Ejemplos:   Entrada: cinta[] = { 25, 80, 160}, registros[] = { 15, 2, 8, 23, 45, 50, 60, … Continue reading «Recuperación vertical y horizontal (MRT) en cintas»

Montón de emparejamiento

Pairing Heap es como una forma simplificada de Fibonacci Heap . También mantiene la propiedad del montón mínimo , cuyo valor principal es menor que el valor de los Nodes secundarios. Se puede considerar como un montón binomial autoajustable. Cada Node tiene un puntero hacia el hijo izquierdo y el hijo izquierdo apunta hacia el … Continue reading «Montón de emparejamiento»

Encuentre el K-ésimo elemento más pequeño en una array para múltiples consultas

Dada una array arr[] de tamaño N y una array Q[][] que consta de M consultas que deben procesarse en la array dada. Se sabe que estas consultas pueden ser de los siguientes dos tipos: Tipo 1: si Q = 1, agregue un elemento en la array {tipo, elemento_para_agregar}. Tipo 2: Si Q = 2, … Continue reading «Encuentre el K-ésimo elemento más pequeño en una array para múltiples consultas»

Programa C++ para contar inversiones de tamaño tres en una array dada

Dada una array arr[] de tamaño n. Tres elementos arr[i], arr[j] y arr[k] forman una inversión de tamaño 3 si a[i] > a[j] >a[k] e i < j < k. Encuentre el número total de inversiones de tamaño 3. Ejemplo:   Input: {8, 4, 2, 1} Output: 4 The four inversions are (8,4,2), (8,4,1), (4,2,1) and … Continue reading «Programa C++ para contar inversiones de tamaño tres en una array dada»

Estructuras de datos estáticas y dinámicas en Java con ejemplos

La estructura de datos es una forma de almacenar y organizar datos de manera eficiente, de modo que las operaciones requeridas en ellos se puedan realizar de manera eficiente con respecto al tiempo y la memoria. Simplemente, la estructura de datos se usa para reducir la complejidad (principalmente la complejidad del tiempo) del código. Las … Continue reading «Estructuras de datos estáticas y dinámicas en Java con ejemplos»

Árbol rojo-negro | Serie 1 (Introducción)

Introducción: Un árbol rojo-negro es una especie de árbol de búsqueda binario autoequilibrado en el que cada Node tiene un bit adicional, y ese bit a menudo se interpreta como el color (rojo o negro). Estos colores se utilizan para garantizar que el árbol permanezca equilibrado durante las inserciones y eliminaciones. Aunque el equilibrio del … Continue reading «Árbol rojo-negro | Serie 1 (Introducción)»