Intro Acm Icpc
Intro Acm Icpc
Intro Acm Icpc
Requisitos de elegibilidad
Requisitos básicos , si no se cumplen todos
Que es el ICPC estos requisitos no se tendrá posibilidad de
participar en las finales mundiales del
ICPC.
• Tener los deseos y la posibilidad de
participar en las Finales Mundiales.
• Encontrarse inscrito en una institución
de educación superior.
• Estar estudiando por lo menos medio
tiempo, estudiante de intercambio o
internado.
Figura 2: Logotipo del ICPC • Competir solo para una institución este
año.
• Haber participado (como concursante)
El ACM International Collegiate
menos de 2 veces en una final mundial.
Programming Contest (ICPC) provee a los
estudiantes universitarios de oportunidades • Haber participado (como concursante)
para interactuar con estudiantes de otras menos de 5 veces en una fase regional.
• Output Format Error
Requisitos de Elegibilidad , si se cumple • Wrong Answer
con uno de estos requisitos es suficiente • Output Limit Exceded
para poder participar en la final mundial.
• Memory Limit Exceded
• Time Limit Exceded
• Fecha de ingreso a la universidad > 2007.
• Yes (Aceptado)
• Tener menos de 22 años.
• No haber completado más de 8 semestres
de tiempo completo. • Solamente en caso de recibir Yes, se
tomar ́ como problema resuelto, y se
• Se puede pedir una extensión de agregará el minuto en el que fue resuelto
elegibilidad por parte del coach, que será a su cuenta de tiempo.
revisado por el comité del ICPC.
• En caso de recibir otro tipo de respuesta,
se acumulan 20 minutos de castigo que
Mecánica del Concurso solamente serán agregados si el equipo
La mecánica del concurso es relativamente logra resolver ese problema.
sencilla.
• Tres integrantes por equipo. Tipos de problemas
• Una computadora. Los problemas de este concurso abarcan
temas muy variados. Y todos están
• Un conjunto impreso de los problemas a
redactados por medio de una historia, que
resolver por cada miembro del equipo,
permite reflejar parte de su aplicación en el
normalmente de 8 a 10 problemas,
mundo real. Entre los temas que pueden
escritos en ingles.
abarcar los problemas están los siguientes:
• Un conjunto de jueces, que reciben los
• Ad Hoc
problemas por medio de la red,
comúnmente con el software Pcˆ2 • Álgebra
• Los jueces evalúan el problema y envían • Geometría
la respuesta al equipo, y se podrá ver • Búsquedas y ordenamiento
reflejado en la tabla de resultados.
• Teoría de números
• El problema se podrá codificar en los
siguientes lenguajes : C, C++, Java. Antes • Combinatoria
se permitía Pascal, pero a partir de la • Grafos
final del 2007 ya no se considera como un
• Geometría computacional
lenguaje válido.
• Programación Dinámica
• El que resuelva más problemas gana.
• En caso de empate en problemas
resueltos se definir por el tiempo.
• Cuando se envía un problema, este puede Importancia de los
tener las siguientes respuestas por parte algoritmos
del juez: En este concurso, lo mas importante es el
• Compile Error conocimiento de algoritmos.
Primero, que es un algoritmo : ”Algoritmo es > to be fun. Special effects have more of a
un procedimiento computacional bien ”drug like”high for
definido que toma algún valor o conjunto de yes, but hey! you need algorithms to make
valores como entrada, y produce algún valor decent programs. it’s like two builders saying
o conjunto de valores como salida”. En ”yer, using bricks and mortar is just too
resumen, es como un mapa bien definido academic. Me?
para completar una tarea.
I like wood and nails”, but with wood and
Algunos algoritmos pueden ser resueltos nails you build... what? Cubby houses. houses
intuitivamente y de forma natural por in trees. dog kennels. the guy with the bricks
nuestro razonamiento lógico y capacidad de and mortar builds other things.
resolución de problemas. Sin embargo, para
los algoritmos complejos, no es suficiente el
Ligas de Interés
razonamiento lógico, se requiere
estudiarlos, así los podremos usar como
bloques en la construcción de la solución de http://icpc.baylor.edu : Pagina oficial del
problemas lógicos de manera eficiente. ACM ICPC. En esta pagina se pueden
conocer aspectos como las sedes para los
Tiempo de ejecución diferentes concursos regionales, asi como
información sobre la final mundial,
Algo importante que hay que tener en resultados de las diferentes etapas y reglas
cuenta es el tiempo de ejecución de un de elegibilidad.
algoritmo. En Ciencias de la Computación
normalmente se habla de tiempo de http://acm.uva.es/ : Archivo de problemas
ejecución dependiendo del tamaño de la de la Universidad de Valladolid. Un 78 % de
entrada. los equipos participantes, entrenan en esta
pagina. Contiene mas de 1000 problemas
para resolver. Cuenta con un juez en lınea
que evalua los problemas asi como lo hara el
sistema de evaluacion de un concurso real.
http://acmicpclive
archive.uva.es/nuevoportal/ : Archivo de
problemas con los problemas de los
concursos de las diferentes regiones asi
como de las finales mundiales. Cuenta con
un juez en lınea que evalua los problemas.
http://www.topcoder.com/tc : En la
categoria de algoritmos se participa en lınea
Figura 3: Tiempo aprox. de ejecución con N=100
por medio de un entorno en Java. Se pueden
Ademas de la eficiencia, el estudio de utilizar como lenguajes C++, Java, C# y
diferentes algoritmos puede definir la Visual Basic.
variedad de problemas que se puede
http://projecteuler.net/ : Problemas
resolver.
matematicos que pueden ser resueltos por
Para terminar quisiera agregar este medio de un lenguaje de programación.
fragmento de una discusión en un foro: Aunque no necesariamente.
Creditos:
Este documento esta basado en: