Simulación 3 de 51nod
A. Se puede resolver mediante búsqueda binaria. B. Se define fi como el número esperado de pasos para llegar a la siguiente posición. Una forma de calcularlo es: fi = 1 + (1-p) * (1 + fi-1) + (1-p)^2 * (1 + fi-1) + ... Esta expresión se simplifica a: fi = 1 + ((1-p)/p) * (fi+1) Otra forma es: fi = 1 + (1-p) * (1 + fi-1 + fi) Al resolver esta ec ...
Publicado el 8-24 16:43
Uso de la clase ArrayList en Java
Introducción:
En Java, ArrayList es una implementación de arreglo dinámico que ofrece una forma flexible para almacenar y manipular conjuntos de datos. Es parte del marco de colecciones de Java y permite agregar o eliminar elementos en tiempo de ejecución, además de proporcionar varios métodos útiles para trabajar con los elementos de la lista. ...
Publicado el 8-16 03:01
Estructuras de Datos: Colas y su Implementación
Una cola es una estructura de datos lineal con restricciones específicas en cuanto a cómo se pueden añadir y eliminar elementos. Piensa en las colas de la vida real, como una fila de personas esperando su turno.
Las colas se caracterizan por el principio de "primero en entrar, primero en salir" (FIFO - First In, First Out). Esto signi ...
Publicado el 8-13 19:41
Guía Exhaustiva de los Algoritmos de la STL en C++
Algoritmos de Secuencia No Modificadores
Estas funciones operan sobre los elementos de un contenedor sin alterar su estado ni su orden original.
1.1. Búsqueda de elementos (find)
find(inicio, fin, valor): Localiza el primer elemento equivalente a valor. Devuelve un iterador al final si no hay coincidencias.
find_if(inicio, fin, predicado): ...
Publicado el 8-7 20:06
Estructura de Datos y Algoritmos: Colas en C
Una cola es una estructura de datos lineal especial donde la inserción de elementos ocurre en un extremo (llamado cola) y la eliminación en el otro (llamado frente). Sigue el principio de Primero en Entrar, Primero en Salir (FIFO).
Implementación de la Cola
Las colas se pueden implementar utilizando arreglos o listas enlazadas. La implementació ...
Publicado el 8-6 22:32
Técnicas Avanzadas de Optimización y Algoritmia
Técnicas Avanzadas de Optimización y Algoritmia
Este artículo compila una colección de técnicas y trucos avanzados utilizados en programación competitiva, abarcando desde algoritmos poco comunes hasta optimizaciones esenciales para problemas complejos.
1. Enumeración de Subconjuntos en Subconjuntos
Al iterar sobre todos los subconjuntos de una ...
Publicado el 8-6 16:42
Implementación de un Sistema de Gestión Escolar usando std::vector en C++
El uso de la biblioteca de plantillas estándar (STL) en C++ facilita la administración de colecciones de datos dinámicas. En este artículo, exploraremos cómo desarrollar un sistema de gestión de estudiantes utilizando el contenedor std::vector, permitiendo realizar operaciones fundamentales como la inserción, búsqueda, actualización y eliminaci ...
Publicado el 8-5 16:01
Fundamentos Esenciales de C y C++ para Programación Competitiva
Configuración Inicial y Cabeceras
En el desarrollo con C++, es una práctica estándar utilizar las versiones de C++ de las librerías clásicas de C. Por ejemplo, en lugar de stdio.h, se recomienda emplear cstdio, lo cual mejora la integración con el lenguaje.
Tipos de Datos y Gestión de Memoria
El manejo preciso de los tipos de datos es crítico p ...
Publicado el 8-1 16:09
Implementación de Listas Enlazadas Simples en Go
Este artículo detalla la implementación de una lista enlazada simple en Go, abarcando funcionalidades esenciales como inicialización, visualización, detección de ciclos, inversión, vaciado, y operaciones de inserción y eliminación en diversas posiciones.
Estructuras de Datos
Se define un nodo (Node) que continee un valor entero y un puntero al ...
Publicado el 7-29 06:48
Resolución de "El Dilema del Vigía" en Warcraft III con Aceleración Matricial
El problema "El Dilema del Vigía" (Vijos 1067) nos presenta un escenario inspirado en Warcraft III, donde un personaje llamado Vigía (Warden) debe inspeccionar una serie de prisiones alineadas. El Vigía comienza en la entrada y debe finalizar en la última prisión (la número n). Su habilidad especial, "Parpadeo" (Blink), le p ...
Publicado el 7-28 07:09