Introducción al Curso

de Programación Competitiva

Por Ariel Parra

¿Quienes somos?

El club de Programación Competitiva Γα=Ω5 de la Universidad Autónoma de Aguascalientes (UAA). Estamos conformado unicamente por estudiantes que buscan enseñar y reforzar los conocimientos del Análisis y Diseño de Algoritmos en el lenguaje de C++ con el objetivo de participar en torneos de programación a nivel local, nacional e internacional principalmente, pero no solo programamos en este club sino que también aspiramos a fortalecer tus habilidades y apoyarte en tu desarrollo profesional, proporcionando recursos y oportunidades para avanzar en tu carrera.

#c

CPC Γα=Ω5

¿Qué es la Programación Competitiva?

#c

La programación competitiva es la combinación del diseño de algoritmos junto a su implementación para resolver problemas específicos de manera eficiente en un determinado tiempo.

Esto se junta con el trabajo el equipo cuando en las competencias de programación competitiva los participantes aplican su conocimiento de algoritmia para resolver un conjunto de problemas lógicos y matemáticos mientras que se distribuyen las distintas tareas.

CPC Γα=Ω5

¿Que es la algoritmia?

La algoritmia es la ciencia que estudia a los algoritmos, donde un algoritmo se entiende como una serie de instrucciones y operaciones que permiten resolver un problema. Los problemas en la algoritmia se caracterizan por tener un conjunto de datos de entrada y resultados esperados.

Este análisis se puede representar mediante el siguiente esquema:

graph LR; A[PROBLEMA: Datos] B[SOLUCIÓN: Resultados esperados] A --> B
CPC Γα=Ω5

¿Qué es la ley de Kidlin?

No nos referimos a la ley de Kidlin de protección de información confidencial en las firmas de abogados, sino al personaje ficticio de la novela King Rat escrita por James Clavell. Donde el enfoque de Kidlin para resolver los desafíos de su vida llevó al desarrollo de una ley que afirma:

"Si escribes el problema claramente, entonces tienes la mitad de la solución"

U originalmente en inglés la ley de Kidlin dice:

“If you write the problem down clearly, then the matter is half solved.”

CPC Γα=Ω5

Ejemplo de un problema

¿Cuál es la cantidad mínima de estos tetrominós en forma de 'L' necesaria para formar un cuadrado?

#c

CPC Γα=Ω5

Concursos

ICPC (International Collegiate Programming Contest). está es la competencia de programación competitiva más importante a nivel mundial está auspiciada por la asociación ACM-IEEE, está se realiza anualmente alrededor del mundo en 3233 universidades en 110 países de los 6 continentes. En México el ICPC tiene sede en la universidad ITESO. Participar en está competencia es el objetivo principal del club.
Facebook Hacker Cup es la competencia anual de Facebook.
CoderBloom es una competencia dirigida a mujeres.
RPC (Red de Programación Competitiva) son concursos enfocados a la comunidad de Latinoamérica, suelen tener espejos de otros concursos.

#c

CPC Γα=Ω5

Plataformas para la programación competitiva

Codeforces Es una plataforma desarrollada por programadores de la universidad ITMO en Rusia. está es la plataforma que usaremos en el curso debido a que es la más popular entre la comunidad del ICPC, donde después de cada concurso podemos acceder a un gimnasio con los problemas del concurso. Codeforces tiene una gran cantidad de problemas a resolver y tiene múltiples concursos cada mes.
AtCoder está plataforma es como el codeforces pero sin problemas y de Japón donde tienen lugar múltiples concursos semanales.
LeetCode está plataforma está enfocada principalmente hacia las entrevistas técnicas de trabajo, por lo que los problemas ahi son más técnicos. Si quieres aplicar a una empresa como las 'FAANG', te recomiendo practicar aquí. Tienen múltiples concursos semanalmente.

HackerRank está es una plataforma que tiene concursos semanales no necesariamente de programación competitiva, donde también cuentan con cursos y exámenes de distintas habilidades y tecnologías.

CPC Γα=Ω5

Nuestra Página web: cpc-gallos.github.io

Aquí encontraras mucha información acerca la programación competitiva como libros, cursos de otras universidades, comunidades en discord y también sobre temas distintos a la programación competitiva como lo es el desarrollo profesional, internships, oportunidades de empleo y mucho más.

#c

CPC Γα=Ω5

Referencias

CPC Γα=Ω5

Facebook Apple Amazón Netflix Google