Lo más importante cuando se prepara para ACM – ICPC es práctica, práctica y más práctica. Cuanto más practiques, más posibilidades tendrás de llegar a las Regionales o incluso a las Finales Mundiales. Si bien algunas personas pueden decir que debe comenzar con el aprendizaje de Algoritmos y Estructuras de Datos, le recomendaría que aprenda los conceptos básicos de cualquier lenguaje entre C / C ++ / Java hasta un nivel tal que pueda realizar una tarea sin necesidad de consultar el sintaxis en el libro de texto / internet. Y luego, sumérgete directamente en el mundo de la codificación competitiva y sigue aprendiendo cosas nuevas cuando sea necesario. Por ej. Si encuentra un problema en el que necesita un algoritmo para Prime Generation, piense en el método más básico e impleméntelo, debería funcionar el 70% del tiempo, ahora piense cómo puede mejorarse en términos de velocidad y memoria y siga resolviendo otros problemas, cuando encuentre un problema como PRIME1 en Spoj, es cuando todos sus métodos fallarán y ahora necesitaría un nuevo algoritmo para la misma tarea anterior de Prime Generation, una forma de superar este problema es utilizando el algoritmo de tamizado segmentado (programación dinámica) entre muchos otros. De esta manera, aprenderá gradualmente todos los algoritmos necesarios para la programación competitiva, como varios tipos de búsqueda, clasificación, algoritmos de árbol y gráfico, algoritmos de flujo de red, etc.
Hay muchos sitios para ayudarlo en esto, como CodeChef, CodeForces, HackerEarth, HackerRank, Spoj, TopCoder, ProjectEuler, etc.
Para alcanzar el nivel requerido para ACM – ICPC, mantenga un objetivo de resolver 2 – 3 problemas todos los días desde cualquiera de los sitios mencionados anteriormente y aborde los sitios en el siguiente orden y siga resolviendo problemas hasta que resuelva al menos 80 – 100 problemas en cada uno de ellos:
- ProjectEuler / HackerRank
- HackerEarth
- CodeChef / CodeForces
- Spoj
- TopCoder
En este momento, comprenderá a fondo todos los algoritmos utilizados en la codificación competitiva y los diferentes tipos de preguntas que se hacen en ellos y los diferentes estilos en los que se hacen. En mi opinión, 6 meses de práctica de este tipo podrían llevarlo fácilmente a las Regionales ACM – ICPC y 1 año del mismo lo llevaría fácilmente a las Finales Mundiales ACM – ICPC (el Teatro de los Sueños de todos los programadores). Cuando creas que estás listo para el ICPC, busca compañeros de equipo que tengan diferentes capacidades de programación que las tuyas para que se complementen y juntos puedan resolver cualquier conjunto de problemas. Luego, siéntese con su equipo durante 5-6 sesiones en una competencia como el entorno y practique preguntas de los Regionales de años anteriores que se pueden encontrar aquí.
- Obtuve una admisión para el programa de maestría en ingeniería en la Universidad de Cincinnati para CS. ¿Cómo calificaría este programa?
- He comenzado a aprender algunas técnicas de análisis de datos como la regresión lineal, ¿cuáles son algunos buenos conjuntos de datos o proyectos personales en los que puedo trabajar?
- Entiendo que Bertrand Russell tiene un argumento contra la causalidad. ¿Cuáles son algunos de los conceptos básicos de eso?
- Tengo 5 años de experiencia en el sector de TI en India y quiero obtener un MBA a tiempo completo en recursos humanos. ¿Es aconsejable? ¿Las compañías de reclutamiento prefieren ese perfil?
- Acabo de comenzar mi primer trabajo en Google y me siento muy abrumado con proyectos y plazos. Dicen que esto es “normal” y “esperado”, pero ¿es realmente así?
¡Sigue esta estrategia y deberías estar listo!
Dato curioso: mi equipo se formó una semana antes que los nacionales en línea y nuestro equipo nunca tuvo tiempo para practicar juntos. Los tres nos reunimos por primera vez el día de los nacionales y aún nos seleccionaron para los Regionales de Asia 2014. Éramos solo un grupo de muchachos con diferentes habilidades que querían ir al ICPC y nos juntamos y Logramos pasar. Pero eso no significa que su equipo no deba practicar en una competencia como el entorno antes del evento real. Siempre le daría una ventaja y una ventaja adicional sobre los demás.
La mejor de las suertes para tus preparaciones de ICPC …
Feliz codificación !!! Salud !!!