Resumen de la prueba de búsqueda binaria del 17 de agosto
Resumen de la prueba de búsqueda binaria del 17 de agosto
Enlace a la competición
Putnuación
A. Cortar árboles
B. Comprar madera
C. Segmentación de array II
D. Comer helados
E. Saltando piedras
F. Vacas secando ropa
100
80
100
\(_{No resuelto:(}\)
10
0
Puntuación total
\(_{Muy mal}\)
T1. P1873 [COCI 2011/2012 #5] EKO / Cortar árboles
...
Publicado el 7-22 15:14
Implementación de Algoritmos: Técnicas de Búsqueda y Ordenación
Algoritmos de Búsqueda
La búsqueda es el proceso de localizar un elemento dentro de una estructura de datos. La eficiencia de una búsqueda depende directamente de la organización de los datos y del algoritmo seleccionado. A continuación, se exploran dos enfoques fundamentales con implementaciones en Java.
1. Búsqueda Secuencial
Es el método más ...
Publicado el 7-19 21:01
Búsqueda de picos en arreglos: técnicas de búsqueda binaria y valor máximo
Dado un arreglo de números enteros nums de tamaño n, se debe ancontrar un elemento pico y retornar su índice. Un elemento pico es aquel cuyo valor es estrictamente mayor que el de sus vecinos adyacentes. Si existen múltiples picos, basta con retornar el índice de cualquiera de ellos.
Consideraciones importantes:
Se asume que nums[-1] = nums[n] ...
Publicado el 7-7 04:55
Problemas y Soluciones del Concurso Codeforces 678 División 2
Problema B: Cuadrado Primo
Construir una matriz \(n\times n\) donde la suma de cada fila y columna sea un número primo, y ningún elemento sea primo. Sea \(p\) esta suma, colocar \(p-n+1\) en la diagonal principal y 1 en las demás posiciones. Encontrar el primo más pequeño \(p\) tal que \(p-n+1\) no sea primo.
Problema C: Búsqueda Binaria
Dada u ...
Publicado el 7-4 02:37
Problemas de programación del Concurso Lanqiao: Soluciones en Python
Problema A: Conteo de números sin una secuencia específica
Se requiere determinar cuántos números en el rango de 12345678 a 98765432 no contienen la subsecuencia "2023". "No contener" significa que incluso eliminando dígitos del número, no se puede formar "2023". Por ejemplo, 20322175 y 33220022 no contienen " ...
Publicado el 7-1 20:06
Análisis y Soluciones de Algoritmos para Problemas de Competencia de Programación
Problema 1: Segmentación de Cadenas y Optimización
El objetivo de este problema es procesar una cadena binaria y encontrar el valor mínimo entre la mitad del segmento más largo de unos consecutivos y el segundo segmento más largo. La estrategia implica recorrer la cadena para identificar y almacenar las longitudes de todos los bloques contiguos ...
Publicado el 6-30 21:54
Discretización Eficiente de Datos con C++ para Rangos Extensos
Conceptos Fundamentales de Discretización
La discretización consiste en transformar datos con valores en un rango amplio a un rango más pequeño y manejable, priorizando la identidad o el orden relativo sobre el valor numérico exacto. En el desarrollo de software, esta técnica es útil para optimizar operaciones de búsqueda y almacenamiento. Se d ...
Publicado el 6-29 23:49
Búsqueda Binaria para Detectar Picos en Arreglos
Problema 21: Índice del Pico en un Arreglo de Montaña
Enlace del problema: 852. Peak Index in a Mountain Array - LeetCode
Descripción: Se proporciona un arreglo de montaña donde existe un índice que satisface: arr[i] > arr[i-1] y arr[i] > arr[i+1]. Devuelve ese índice del pico.
Enfoque mediante búsqueda binaria
En lugar de un enfoque de f ...
Publicado el 6-27 20:30
Encontrar Rango de un Valor en un Arreglo Ordenado (O log n)
Este problema consiste en localizra las posiciones de inicio y fin de un valor objetivo específico dentro de un arreglo de enteros ordenado. La restricción principal es que la complejidad del algoritmo debe ser de orden O(log n).
Si el valor objetivo no se encuentra en el arreglo, la función debe devolver [-1, -1].
Por ejemplo, dado el arreglo ...
Publicado el 6-15 17:51
Técnicas de Programación: Orden Topológico y Caché LRU en Soluciones de LeetCode
Casa Robada III (Programación Dinámica en Árbol)
En este problema, se utiliza programación dinámica en un árbol para calcular la máxima cantidad que se puede robar sin robar nodos adyacentes. La solución implica un recorrido DFS que devuelve dos valores: el máximo sin robar el nodo actual y el máximo robándolo.
class ArbolDP {
public int ...
Publicado el 6-10 20:31