Oro
Matemática
- Divisibilidad
- Algoritmo de Euclides para el máximo común divisor
- Criba de Eratóstenes
- Criba lineal
- Cantidad de divisores / suma de divisores
- Factorización de enteros
- Tests de primalidad
- Función φ de Euler
- Aritmética modular
- Exponenciación binaria
- Exponenciación binaria por factorización
- Inverso multiplicativo modular
- Combinatoria
- Coeficientes binomiales
- Potencia de un divisor en el factorial
- Factorial módulo p
- Estrellas y barras
- Generar todas las K-combinaciones
- Colocar alfiles en un tablero de ajedrez
- Problema de Josefo
Programación dinámica
Grafos
- Caminos más cortos con aristas no ponderadas
- Union-Find / conjuntos disjuntos
- Union-Find / conjuntos disjuntos (DSU)
- Orden topológico
- Orden topológico
- Caminos más cortos con pesos de arista no negativos
- Algoritmo de Dijkstra
- Dijkstra en grafos dispersos
- Algoritmo de Bellman-Ford
- BFS 0-1
- Algoritmo de D´Esopo-Pape
- Algoritmo de Floyd-Warshall
- Árboles de expansión mínima
- Árbol de expansión mínima - algoritmo de Kruskal
- Árbol de expansión mínima (MST) - Kruskal con Union-Find / conjuntos disjuntos (DSU)
- Árbol de expansión mínima - algoritmo de Prim
- Segundo mejor árbol de expansión mínima
Estructuras de datos
- Más operaciones sobre conjuntos ordenados
- Estadístico de orden K-ésimo en O(N)
- MEX (mínimo excluido) de una secuencia
- (Opcional) Conjuntos ordenados con comparadores personalizados
- Pilas
- Pila de mínimo / Cola de mínimo
- Encontrar la submatriz de ceros más grande
- Ventana deslizante
- Actualización puntual y suma de rango
- Árbol de Fenwick (BIT)
- Árbol de Segmentos
- Tabla Dispersa (Sparse Table)
- Consulta de mínimo en un rango (Range Minimum Query)