Red de Prerrequisitos de Habilidades

Added on: May 04, 2026
User Prompt

{
"version": "1.0",
"skills": [
{
"id": "SK01",
"name": "Implementación y Simulación",
"description": "Traducir enunciado a código, simulación directa, manejo de casos borde.",
"prereqs": []
},
{
"id": "SK02",
"name": "Complejidad y Optimización Básica",
"description": "Big-O, límites típicos, optimizaciones simples (I/O, loops, constantes).",
"prereqs": ["SK01"]
},
{
"id": "SK03",
"name": "Estructuras de Datos Básicas",
"description": "vector, stack, queue, deque, set/map, unordered_map, pair/tuple.",
"prereqs": ["SK01"]
},
{
"id": "SK04",
"name": "Ordenamiento y Arreglos",
"description": "sort, comparadores, ordenamientos por clave, compresión simple.",
"prereqs": ["SK03"]
},
{
"id": "SK05",
"name": "Two Pointers / Sliding Window",
"description": "Ventanas deslizantes, dos punteros, subarreglos con condición.",
"prereqs": ["SK04"]
},
{
"id": "SK06",
"name": "Prefijos y Diferencias",
"description": "Prefix sums 1D/2D, difference array, rangos y acumulados.",
"prereqs": ["SK04"]
},
{
"id": "SK07",
"name": "Búsqueda Binaria (índice y respuesta)",
"description": "lower/upper_bound, binary search on answer, condiciones monotónicas.",
"prereqs": ["SK02", "SK04"]
},
{
"id": "SK08",
"name": "Grafos: Representación + BFS/DFS",
"description": "Listas de adyacencia, BFS/DFS, componentes, bipartito básico.",
"prereqs": ["SK03"]
},
{
"id": "SK09",
"name": "Caminos Cortos Básicos",
"description": "Dijkstra (no negativos), BFS para unweighted, nociones de relajación.",
"prereqs": ["SK08", "SK03"]
},
{
"id": "SK10",
"name": "Árboles: Recorridos y Propiedades",
"description": "DFS en árbol, depth, parent, subtree, caminos simples (LCA luego).",
"prereqs": ["SK08"]
},
{
"id": "SK11",
"name": "Programación Dinámica Básica (1D/2D)",
"description": "Estados, transiciones, casos base, orden de cómputo.",
"prereqs": ["SK02", "SK04"]
},
{
"id": "SK12",
"name": "DP en Secuencias / Knapsack",
"description": "LIS, subsecuencias, knapsack 0/1 y unbounded (básico).",
"prereqs": ["SK11"]
},
{
"id": "SK13",
"name": "DP en Árboles / DAG",
"description": "Tree DP y DP sobre DAG/toposort (nivel introductorio).",
"prereqs": ["SK10", "SK11"]
},
{
"id": "SK14",
"name": "Aritmética Modular",
"description": "Operaciones mod, factorial mod, potencias rápidas, inverso (opcional).",
"prereqs": ["SK02"]
},
{
"id": "SK15",
"name": "Teoría de Números Básica",
"description": "gcd/lcm, primalidad, sieve, factorización básica.",
"prereqs": ["SK14"]
},
{
"id": "SK16",
"name": "Combinatoria Básica",
"description": "Conteos simples, nCk, principio multiplicativo, IE (intro).",
"prereqs": ["SK14"]
},
{
"id": "SK17",
"name": "Greedy (Patrones y Pruebas básicas)",
"description": "Interval scheduling, ordenar por criterio, decisiones locales razonables.",
"prereqs": ["SK02", "SK04"]
},
{
"id": "SK18",
"name": "Fenwick / Segment Tree (Intro)",
"description": "Estructuras para consultas/actualizaciones en rango (sin lazy al inicio).",
"prereqs": ["SK06", "SK04"]
},
{
"id": "SK19",
"name": "Strings Básico",
"description": "KMP, patrones, conteos, manipulación eficiente.",
"prereqs": ["SK04"]
},
{
"id": "SK20",
"name": "Geometría Computacional Básica",
"description": "Orientación, cross product, distancia, intersecciones simples.",
"prereqs": ["SK02"]
}
]
}