Encuentre un elemento de pico en una array 2D

Un elemento es un elemento pico si es mayor o igual que sus cuatro vecinos, izquierdo, derecho, superior e inferior. Por ejemplo, los vecinos de A[i][j] son ​​A[i-1][j], A[i+1][j], A[i][j-1] y A[i][j+1 ]. Para los elementos de esquina, los vecinos que faltan se consideran de valor infinito negativo. Ejemplos:  Input : 10 20 15 21 … Continue reading «Encuentre un elemento de pico en una array 2D»

Suma máxima de subarreglo usando el algoritmo Divide and Conquer

  Se le da una array unidimensional que puede contener enteros positivos y negativos, encuentre la suma de subarreglo contiguo de números que tiene la suma más grande. Por ejemplo, si el arreglo dado es {-2, -5, 6, -2, -3, 1, 5 , -6}, entonces la suma máxima del subarreglo es 7 (ver elementos resaltados). … Continue reading «Suma máxima de subarreglo usando el algoritmo Divide and Conquer»

El divisor más pequeño de N más cercano a X

Dados dos enteros positivos N y X , la tarea es encontrar el divisor más pequeño de N que esté más cerca de X . Ejemplos: Entrada: N = 16, X = 5  Salida: 4  Explicación:  4 es el divisor de 16 más cercano a 5. Entrada: N = 27, X = 15 Salida: 9  … Continue reading «El divisor más pequeño de N más cercano a X»

Combinar K arrays ordenadas de diferentes tamaños | (Enfoque divide y vencerás)

Dadas k arrays ordenadas de diferente longitud, combínelas en una sola array de modo que la array combinada también esté ordenada. Ejemplos:   Input : {{3, 13}, {8, 10, 11} {9, 15}} Output : {3, 8, 9, 10, 11, 13, 15} Input : {{1, 5}, {2, 3, 4}} Output : {1, 2, 3, 4, 5} Sea … Continue reading «Combinar K arrays ordenadas de diferentes tamaños | (Enfoque divide y vencerás)»

Inversiones significativas en un arreglo

Dada una array arr[] , la tarea es encontrar el recuento total de inversiones significativas para la array. Dos elementos arr[i] y arr[j] forman una inversión significativa si arr[i] > 2 * arr[j] e i < j . Ejemplos:   Entrada: arr[] = { 1, 20, 6, 4, 5 }  Salida: 3  Los pares de inversión … Continue reading «Inversiones significativas en un arreglo»

Cambio en la mediana de una array dada después de eliminar elementos dados

Dadas dos arrays arr1[] y arr2[] . La array arr1[] está ordenada. La tarea es imprimir el cambio en la mediana después de eliminar cada elemento de la array arr2[] uno por uno. Nota: La array arr2[] tiene solo aquellos elementos que están presentes en la array arr1[] . Ejemplos:  Entrada: arr1[] = {2, 4, … Continue reading «Cambio en la mediana de una array dada después de eliminar elementos dados»

Consultas de rango de array para encontrar la cantidad de elementos cuadrados perfectos con actualizaciones

Dada una array arr[] de N enteros, la tarea es realizar las siguientes dos consultas:  consulta (inicio, final) : Imprime la cantidad de números cuadrados perfectos en el subarreglo de principio a fin update(i, x) : agregue x al elemento de array al que hace referencia el índice de array i , es decir: arr[i] … Continue reading «Consultas de rango de array para encontrar la cantidad de elementos cuadrados perfectos con actualizaciones»

Longitud máxima posible cortando N maderas dadas en al menos K piezas

Dada una array wood[] de tamaño N , que representa la longitud de N piezas de madera y un número entero K , se deben cortar al menos K piezas de la misma longitud de las piezas de madera dadas. La tarea es encontrar la máxima longitud posible de estas K piezas de madera que … Continue reading «Longitud máxima posible cortando N maderas dadas en al menos K piezas»

Divida una array ordenada en K partes con la suma de la diferencia de máximo y mínimo minimizada en cada parte – Conjunto 2

Dada una array ordenada ascendente arr[] de tamaño N y un número entero K , la tarea es dividir la array dada en K subarreglos no vacíos de modo que la suma de las diferencias del máximo y el mínimo de cada subarreglo se minimice. Ejemplos: Entrada: arr[] = { 10, 20, 70, 80 }, … Continue reading «Divida una array ordenada en K partes con la suma de la diferencia de máximo y mínimo minimizada en cada parte – Conjunto 2»

Programa C++ para verificar el elemento mayoritario en una array ordenada

Pregunta: Escribe una función para encontrar si un entero x aparece más de n/2 veces en una array ordenada de n enteros. Básicamente, necesitamos escribir una función, digamos isMajority(), que tome una array (arr[] ), el tamaño de la array (n) y un número para buscar (x) como parámetros y devuelva verdadero si x es un … Continue reading «Programa C++ para verificar el elemento mayoritario en una array ordenada»