Skip to content

Syllabus para el grupo de estudio en programación competitiva de la Universidad Francisco de Paula Santander - Cúcuta

License

Notifications You must be signed in to change notification settings

ProgramacionCompetitivaUFPS/Syllabus

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Syllabus - Programación Competitiva

Semestre I - 2018

Si quieres aplicar la estructura de este repositorio en tus propios proyectos educativos, mira el documento con los metadatos del repositorio.

  • Clase: Programación Competitiva UFPS, grupo de estudio.

  • Coach: Milton Vera

  • Instructores/Lideres del grupo (abierto a nuevas postulaciones):

  • Metodología:

    • Gerson Lázaro
    • Melissa Delgado
  • ¿Necesitas ayuda?

Descripción del curso

Explora la programación desde un nuevo contexto. Aprende creando y resolviendo problemas mientras te diviertes y compites con los demás estudiantes en la Universidad y en el resto del mundo. En este grupo de estudio se socializan los temas comunes en las maratones de programación competitiva, se hacen sesiones colaborativas sobre cada uno de estos temas, y se proponen ejercicios para resolver con la ayuda guiada de los instructores y el couch.

El grupo de estudio hace parte activa de las competencias organizadas por la Red de programación Competitiva y la Liga Colombiana de Programación. Del mismo modo, elige a los estudiantes que representan a la Universidad en las diferentes fases del International Collegiate Programming Contest.

Si eres nuevo en competencias de Programación, una corta introducción: Slides

¿Que es una maratón de programación?

Basicamente, es una competencia donde las personas miden sus habilidades en programación, intentando resolver el mayor numero de problemas en el menor tiempo posible, donde cada problema requiere el desarrollo de un software que procese correctamente unas entradas determinadas, y genere unas salidas validas.

Competencias ICPC

Aunque existen diferentes tipos de maratones de programación, el grupo de estudio se centra en preparar a los estudiantes para las maratones de tipo ICPC, las cuales conllevan las siguientes reglas:

  • Equipos de 3 estudiantes
  • Un computador por equipo
  • Set de entre 8 y 13 ejercicios propuestos en inglés.
  • Gana el equipo que mas ejercicios correctos envie.
  • Los empates se definen por el menor tiempo. El tiempo es la suma de los minutos transcurridos entre el inicio de la competencia y el momento de envio del ejercicio.
  • Cada envio erroneo conlleva una penalización de 20 minutos en el tiempo final si el ejercicio logra ser solucionado.
  • Solo se permite el uso de internet para interactuar con la plataforma de envío.
  • Se permite utilizar todo el material impreso/escrito que el equipo lleve previamente.

Otras competencias de programación

Las siguientes competencias utilizan formatos similares de competencias, y suelen entregar grandes premios a sus ganadores. Se recomienda a los miembros del grupo participar en estas competencias para mejorar sus habilidades y medirse contra una gran comunidad:

Prerequisitos

  • Se recomienda entender previamente los conceptos básicos de programación y saber aplicarlo en algún lenguaje. No es estrictamente obligatorio, pero hará mas facil la curva de aprendizaje
  • Dedicación.
  • Para participar en las competencias oficiales de ICPC, es necesario cumplir con los requisitos establecidos en el Árbol de elegibilidad de ICPC. En resumen, para el 2018 debes cumplir al menos UNO de los siguientes dos requisitos:
    • Haber iniciado estudios superiores en 2014 o después.
    • Haber nacido en 1995 o después. Si no cumples ninguno de estos requisitos no podrás representar a la Universidad en competencias Nacionales/Regionales, pero si hacer parte del grupo de estudio, de las competencias en RPC/CCPL y todas las demás actividades planteadas.

Resumen del curso

Cada semana se lleva a cabo una sesión presencial en las salas de Sistemas de la Universidad Francisco de Paula Santander. En esta seccin se realiza una parte básica y una avanzada, con temáticas que se ajustan a la complejidad indicada. En estas sesiones en primer lugar se discuten dudas que hayan surgido en el desarrollo de los ejercicios de la semana anterior. Posteriormente se trata el tema de la semana, cuyos slides estarán disponibles en el repositorio. La sesión culmina con ejercicios sobre el tema visto, los cuales se publican en el repositorio, y los estudiantes pueden realizarlos con el apoyo y acompañamiento de los tutores.

Los temas a tratar en el grupo de estudio se encuentran detallados en temas.md.

Tareas

El grupo de estudio no es una asignatura y no es una clase tradicional. Por lo tanto, no se dejan tareas. Sin embargo cada semana se plantea un set de ejercicios propuestos generalmente relacionados al tema visto. Este set empieza a desarrollarse en el aula de clase, y el estudiante puede continuarlo posteriormente en el trascurso de la semana.

Aunque ningún ejercicio es de obligatoria entrega, se recomienda estudiar y practicar los ejercicios tratados para mejorar las habilidades frente a las futuras competencias.

Estos ejercicios se encuentran en la plataforma UFPS Training Center.

Soluciones

Las soluciones realizadas tanto en las competencias de RPC y CCPL como en los sets de entrenamiento pueden ser compartidas con el resto del grupo si asi lo decide su creador (quien comparte una solución acepta liberarla bajo una licencia MIT). Estas soluciones se encuentran en el repositorio soluciones en esta misma organización.

Existen dos maneras de compartir las soluciones:

  1. Compartirla directamente con los tutores para que ellos la integren al repositorio.
  2. (RECOMENDADA) Puedes hacer fork del repositorio soluciones, agregar las tuyas, y enviar un pull requests para unir al repositorio original. Con esto no solo contribuyes al grupo, sino que aprendes el flujo de control de versiones Git, muy útil en otros proyectos educativos y profesionales.

Entrenamientos segundo semestre 2015

Los entrenamientos se llevan a cabo algunos sabados, de 1PM a 6PM con el apoyo de RPC o CCPL, compitiendo con equipos de otras Universidades en Colombia y Latinoamerica. En el archivo calendario.md puedes encontrar la lista de competencias a realizarse durante el 2018:

Recursos

Material de apoyo recomendado

Jueces virtuales de programación Competitiva

Herramientas

  • Uva Hunting - uHunt - Herramienta creada por Felix Halim para llevar un seguimiento avanzado de tu progreso en UVA.
  • UDebug - Busca un problema de UVA, añade una entrada, y verifica la salida.
  • Ideone - IDE online multilenguaje (Incluye java, C y C++)

Sitios de Interes

Contexto

About

Syllabus para el grupo de estudio en programación competitiva de la Universidad Francisco de Paula Santander - Cúcuta

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published