
Un equipo de la UBA es finalista del mundial de programación
Se clasificó entre 2400 grupos de unas mil universidades de cinco continentes
1 minuto de lectura'

Un estereotipo muy frecuentado pinta a la Argentina como cuna de futbolistas geniales. Pero al parecer también puede ufanarse -todavía- de nutrir materia gris capaz de jugar en primera .
El equipo de la Universidad de Buenos Aires integrado por Darío Fischbein, Flavia Bonomo y Sergio Sancho es un buen ejemplo. Acaba de clasificarse como finalista, entre 2400 grupos, para intervenir en el 26° Torneo Mundial de Programación, organizado por la Association for Computing Machinery (ACM) y auspiciado por IBM, en el que intervienen alumnos de más de mil universidades de cinco continentes. En otras palabras, la créme de la créme de la programación.
La cita es el 20 de marzo en Honolulu, Hawaii. Allí se reunirán los 180 participantes con sus entrenadores, uno por equipo. Pero los representantes de la Argentina pueden perder su derecho de medir fuerzas con los mejores del resto del mundo si no obtienen rápidamente los fondos para comprar los pasajes, que peligran debido a las restricciones económicas.
"Es que, entre el corralito y la devaluación, los fondos con los que contábamos se esfumaron", explica Hugo Scolnik, profesor de Ciencias de la Computación en la Facultad de Ciencias Exactas de la UBA.
Las competencias mundiales de programación comenzaron hace poco más de 25 años, en los Estados Unidos, y actualmente atraen el interés internacional.
"Se trata de una jornada en la que hay que resolver entre seis y ocho problemas; es decir, escribir algoritmos (secuencias de pasos que le dicen a la máquina qué hacer) que permitan su resolución -explica Pablo Coll, entrenador del equipo de la UBA-. Todos esos programas deben desarrollarse en el tiempo de la competencia, cinco horas."
Esto significa que cada grupo, con una sola computadora a su disposición, tiene que pensar los problemas, encontrar la solución y expresarla rápidamente en lenguaje de programación. "El hecho de tener una sola máquina representa una especie de cuello de botella -dice Coll-. Los chicos a veces se quedan con problemas resueltos en el papel."
Ases del teclado
De más está decir que los problemas de este tipo de torneos no son de fácil resolución. "Incluso los equipos mejor entrenados, como los chinos o los rusos, no logran hacer todos los problemas porque no les alcanza el tiempo -afirma Irene Loiseau, también profesora de la UBA-. Son pruebas difíciles, que requieren un esfuerzo de programación superior al común. También exigen ingenio y práctica. Y además de todo esto hay restricciones de tiempo: el programa tiene que ejecutar la corrida de los datos que da el jurado en un minuto o dos. En computación se conocen como problemas difíciles . Con dificultades intrínsecas desde el punto de vista de la teoría. Por eso los chicos que acceden a este tipo de finales tienen que ser programadores superlativos."
Como corresponde, la lucha se entabla en los senderos nerviosos de Internet. Tras la largada, no bien un equipo resuelve un problema lo envía electrónicamente a los jurados, que lo evalúan con una serie de casos. Si resulta airoso, se considera aprobado. Cada problema correcto recibe un punto, y el tiempo utilizado en resolverlo se mide en segundos y sirve para desempatar entre dos equipos que tienen la misma cantidad de problemas resueltos.
Ahora, mientras esperan el día del torneo, Fischbein, Bonomo y Sancho acumulan horas de vuelo . "Durante el verano estuvimos entrenándonos en la página de Internet de la ACM, que tiene problemas para ensayar y evaluar on line, como si fuera la competencia misma", dice Flavia.
"No sólo influye cómo resolvés el problema, sino también cómo trabaja el equipo, porque hay un recurso escaso, que es la computadora", agrega Darío.
"Al principio generalmente buscamos cuál es el más fácil y uno se pone a programarlo para tener el primero lo antes posible. Y después los otros van viendo el resto para decidir en qué orden conviene ir resolviéndolos", explica Sergio.
Es que, aunque parezca un juego, la pericia que desarrollan estos programadores no es moneda corriente en las carreras de computación.
"Profesionalmente, es una habilidad fundamental", asegura Loiseau.
"Y desde ya, es una condición indispensable para hacer tecnología en serio", concluye Scolnik .
Cómo son los problemas
- Las pruebas del Mundial de Programación parecen similares a problemas de ingenio. Claro que para resolverlas es preciso dominar conceptos elevados de teoría de la computación. El siguiente es un ejemplo: "Un tío brillante, pero desmemoriado, cree que resolvió una difícil grilla de palabras cruzadas, pero se olvidó dónde dejó la solución. Necesita tu ayuda para reconstruirla de una lista que contiene todas las palabras, más una extra. Tu programa debe resolver las palabras cruzadas y escribir cuál era la palabra que estaba demás". (Siguen una lista de indicaciones...)






