miniaturadeimagen|Participantes de la Competición Internacional Universitaria de Programación representando a la Universidad Nacional de Taiwán en 2010. La Competición Internacional Universitaria de Programación (en inglés International Collegiate Programming Contest, abreviado ICPC) es una competición anual de programación y algorítmica entre universidades de todo el mundo, donde prima el trabajo en equipo, el análisis de problemas y el desarrollo rápido de software. Tiene su sede en la Universidad de Baylor y está liderada por su Director Ejecutivo y profesor de esta universidad, el Dr. William B. Poucher. La ICPC lleva a cabo concursos regionales autónomos que cubren los seis continentes y culminan en una final mundial cada año. En 2018, la participación del ICPC incluyó a estudiantes de 3 233 universidades en 110 países.
La ICPC es auspiciada por la Fundación ICPC y opera bajo acuerdos con las universidades anfitrionas y organizaciones sin fines de lucro, todo de acuerdo con las Políticas y Procedimientos del ICPC. Desde 1977 hasta 2017, el ICPC contó con los auspicios de la Association for Computing Machinery (ACM) y se denominó ACM-ICPC.
Misión La Competición Internacional Universitaria de Programación es una actividad extracurricular y deporte de programación competitiva para estudiantes de universidades de todo el mundo. Las competiciones de ICPC brindan a los estudiantes aventajados la oportunidad de interactuar, demostrar y mejorar sus habilidades de trabajo en equipo, programación y resolución de problemas. La ICPC es una plataforma global para la academia, la industria y la comunidad para destacar y elevar las aspiraciones de la próxima generación de profesionales de la computación en su búsqueda de la excelencia.
Historia La ICPC es una competición que se inició en la Universidad A&M de Texas en 1970. Pasó a ser una competición con varias rondas clasificatorias en 1977 y la final mundial se organizó en colaboración con la ACM Computer Science Conference.
De 1977 a 1989, compitieron principalmente equipos de Estados Unidos y Canadá. La sede central está ubicada desde 1989 en la Universidad de Baylor y las competiciones regionales se ubican en universidades de todo el mundo, bajo el auspicio de ACM y la colaboración de grandes empresas de la industria informática. La ICPC ha ido aumentando en número de participantes y países, por lo que ahora es una competición mundial con equipos de 103 países (en 2016).
Desde 1997 el principal patrocinador es IBM y la participación en la competición ha aumentado enormemente. En 1997 participaron 840 equipos de 560 universidades. En 2016 participaron 46381 estudiantes de 2948 universidades de todo el mundo. El número de equipos aumenta entre un 10% y un 20% cada año.
Reglas de la competición El ICPC es una competición por equipos. Las reglas actuales estipulan que cada equipo ha de tener exactamente 3 miembros. Los miembros han de ser estudiantes universitarios, que hayan estudiado menos de 5 años en la universidad antes del concurso. Los estudiantes que hayan competido en dos finales mundiales (World Finals) o cinco competiciones regionales no pueden participar otra vez.
Durante la competición, los equipos tienen alrededor de 5 horas para resolver entre 8 y 15 problemas (lo normal es 8 para las competiciones regionales y 12 para la final). Se deben programar las soluciones con C, C++, Java, Ada, Python o Kotlin (aunque no está garantizado que todos los problemas sean solucionables usando cualquier lenguaje, el ICPC establece que los jueces habrán resuelto todos los problemas en Java y C++, tanto para los regionales como para la final mundial). Los programas enviados por los equipos se compilan y ejecutan con unos ciertos datos de entrada, si el programa falla al calcular la solución, el equipo es notificado del error y pueden enviar nuevamente el programa o probar con otros problemas.
El ganador es el equipo que resuelve más problemas. Si hay equipos empatadas con el mismo número de problemas resueltos, el orden de clasificación se calcula a partir de los que han tardado menos en resolver los problemas.
Ejemplo: si un equipo A ha enviado sus soluciones para 2 problemas los 60 y 120 minutos desde el inicio del concurso, y otro equipo B lo ha hecho a los 80 y 90 minutos. El desempate entre ambos equipos se haría mirando los tiempos, para el equipo A: 60+120 = 180 minutos. Para el equipo B: 80+90 = 170 minutos. El equipo B ganaría.
El tiempo que se toma para los desempates es el tiempo que ha pasado desde el inicio del concurso más 20 minutos por cada solución incorrecta enviada. En el ejemplo anterior, si el equipo A hubiera enviado 2 soluciones incorrectas para su primer problema, su tiempo final sería: 20+20+60+120 = 220.
El ICPC se diferencia de otras competiciones de programación (por ejemplo la IOI) en que suele tener un gran número de problemas (8 o más para resolver en 5 horas) y que es una competición por equipos con un solo ordenador. Es necesario un buen entendimiento entre los miembros de un equipo para conseguir la victoria.
Competiciones locales, regionales y final mundial La competición tiene distintas fases clasificatorias. Algunas universidades tienen competiciones locales para elegir a los componentes de los equipos. Cada universidad puede mandar un máximo de equipos de 3 personas a la fase regional que puede variar en dependencia de la región. Las competiciones locales son opcionales y las organiza cada universidad como estime conveniente. Algunas universidades optan por seleccionar a los alumnos con notas más altas o a los que muestran más interés.
Los equipos de cada universidad participan en la fase regional, con otros equipos de universidades próximas geográficamente. Hay más de 30 regiones en todo el mundo. Algunas regiones agrupan distintos países (por ejemplo la SWERC incluye a España, Portugal, Francia y otros países europeos), otras son un solo país (la región de Brasil) y otras son sólo parte un país (Estados Unidos está dividido en varias regiones). Los mejor clasificados en cada competición regional participarán en la final mundial. Cada región envía a la final un cierto número de equipos, no pudiendo haber más de un equipo de una misma universidad.
La final mundial se celebra cada año en una ciudad distinta, y congrega a los equipos ganadores de todas las competiciones regionales.
Lista de competiciones regionales Regiones de Europa y Rusia: Suroeste (SWERC): esta región comprende España, Portugal, Francia, Italia, Suiza y el oeste de Austria. Noroeste (NWERC) Central (CERC) Sureste (SEERC) Noreste (NEERC) Regiones de África: África y Arabia (AARPC) Sudáfrica (SAfrica) Regiones de Asia: Beijing Coimbatore (Coim) Kanpur (Kolkata) Daca Kaohsiun Manila Seúl Teerán Xian Shanghái Yokohama Hanói Regiones de Oceanía: Pacífico sur (SPacific) Regiones de América Latina: México y Centroamérica (CAmerica) Caribe Brasil Suramérica Norte Suramérica Sur Regiones de Norteamérica: Pacific Northwest (PacNW) North Central (NCNA) East Central (ECNA) Northeastern (NENA) Rocky Mountain (RM) Mid-Central (MCUSA) Greater New York (GNY) Southern California (Scal) South Central (SCUSA) Southeast USA (SEUSA) Mid-Atlantic (MAUSA)
Ganadores +Instituciones Top Wins Institución 7 Universidad ITMO 4 Universidad Estatal de San Petersburgo 3 Universidad de Shanghái Jiao Tong 3 Universidad Stanford 2 Instituto Tecnológico de California 2 Universidad de Varsovia 2 Universidad de Waterloo 2 Universidad Washington en San Luis 2 Universidad Estatal de Moscú 2019 - Universidad Estatal de Moscú, Rusia 2018 - Universidad Estatal de Moscú, Rusia 2017 - Universidad ITMO, Rusia 2016 - Universidad Estatal de San Petersburgo, Rusia 2015 - Universidad ITMO, Rusia 2014 - Universidad Estatal de San Petersburgo, Rusia 2013 - Universidad ITMO, Rusia 2012 - Universidad ITMO, Rusia 2011 - Universidad de Zhejiang, China 2010 - Universidad de Shanghái Jiao Tong, China 2009 - Universidad ITMO, Rusia 2008 - Universidad ITMO, Rusia 2007 - Universidad de Varsovia, Polonia 2006 - Universidad Estatal de Sarátov, Rusia 2005 - Universidad de Shanghái Jiao Tong, China 2004 - Universidad ITMO, Rusia 2003 - Universidad de Varsovia, Polonia 2002 - Universidad de Shanghái Jiao Tong, China 2001 - Universidad Estatal de San Petersburgo, Rusia 2000 - Universidad Estatal de San Petersburgo, Rusia 1999 - Universidad de Waterloo, Canadá 1998 - Universidad Carlos, República checa 1997 - Harvey Mudd College, Estados Unidos 1996 - Universidad de California, Berkeley, Estados Unidos 1995 - Universidad de Friburgo, Friburgo, Alemania 1994 - Universidad de Waterloo, Canadá 1993 - Universidad de Harvard, Estados Unidos 1992 - Universidad de Melbourne, Australia 1991 - Universidad de Stanford, Estados Unidos 1990 - Universidad de Otago, Nueva Zelanda 1989 - Universidad de California, Los Ángeles, Estados Unidos 1988 - Instituto Tecnológico de California, Estados Unidos 1987 - Universidad de Stanford, Estados Unidos 1986 - Instituto Tecnológico de California, Estados Unidos 1985 - Universidad de Stanford, Estados Unidos 1984 - Universidad Johns Hopkins, Estados Unidos 1983 - Universidad de Nebraska, Estados Unidos 1982 - universidad Baylor, Estados Unidos 1981 - Universidad de Misuri-Rolla, Estados Unidos 1980 - Universidad Washington en San Luis, Estados Unidos 1979 - Universidad Washington en San Luis, Estados Unidos 1978 - Instituto Tecnológico de Massachusetts, Estados Unidos 1977 - Universidad Estatal de Míchigan, Estados Unidos
Véase también Olimpiada Internacional de Informática
Enlaces Sitio oficial
Jueces en Línea ACM-ICPC Live Archive Around the World Universidad de Valladolid Online Judge Caribbean Online Judge Ural State University Online Judge Tianjin University Online Judge Saratov State University Online Judge Sphere Online Judge A2 Online Judge Codeforces CS Academy MIPT Online Judge Peking University Online Judge Jilin University Online Judge Zhejiang University Online Judge Harbin Institute of Technology Online Judge Tianjin University Online Judge Fuzhou University Online Judge Online Problems Solving System University of Dhaka Online Judge & Contest Training Moscow State University Virtual Contest System
Otras Competencias de Programación
TecnoMate - Competencia de Programación de la UTN Facultad Regional Santa Fe - Argentina
Referencias
Categoría:Competiciones de informática Categoría:Programación Categoría:Concursos Categoría:Association for Computing Machinery