¿Qué debe aprender un estudiante de CSE de primer año (que va al segundo año) en las vacaciones de verano para comenzar la programación competitiva?

Solo desearía que alguien estuviera allí para guiarme, cuando estaba en mi primer año de universidad.

En primer lugar, debes encontrar lo que te emociona. La informática es un océano con millones de islas. Necesitas encontrar tu isla. ¿Le interesan las funcionalidades de back-end, o las GUI de front-end, o tiene interés en Analytics?

Una vez que tenga la respuesta a esa pregunta, concéntrese en los fundamentos. Hay un millón de cosas avanzadas que puedes aprender, pero primero debes aprender los fundamentos. No hay nada mejor que saber lo básico. Una vez que se sienta cómodo con los algoritmos básicos, le recomendaría unirse a los foros porque, sinceramente, hay mil millones de personas que son más inteligentes que usted. Aprenda de ellos e intente obtener la mayor cantidad de conocimiento posible.

El aprendizaje nunca se detiene. Aprenda todo lo que pueda e intente implementar su conocimiento recién adquirido a su manera. Desarrolla tus propios algoritmos.

Feliz aprendizaje.

Paz. \metro/,

Ya que solo ha solicitado programación competitiva

  1. Comience a resolver las escaleras de Codeforces desde http://a2oj.com . Esta es una excelente manera de resolver problemas aleatorios A, B, C, D, E de Codeforces en orden creciente de dificultad.
  2. Aprenda más algoritmos y estructuras de datos. Aprenda sobre gráficos y algoritmos de gráficos como BFS, DFS, ruta más corta, árboles de expansión mínima, etc. También lea sobre exponencia de matriz, exponencia modular, árboles indexados binarios, etc. Estos se usan mucho en concursos. Intente leer Introducción a los algoritmos de Cormen o tome el curso de Algoritmos de la Universidad de Stanford. Ambos son una excelente manera de aprender nuevos algoritmos.
  3. Practica DP! . Vaya a http: //a20j.com&nbsp ; y resolver problemas de la categoría de programación dinámica. Lea sobre los problemas estándar de Dp en http://geeksforgeeks.com . Cuantos más problemas de DP resuelva, más confianza ganará.
  4. Si aún no lo hizo, aprenda sobre C ++ STL (Biblioteca de plantillas estándar). Es una herramienta muy útil en la codificación competitiva con plantillas integradas para pilas, colas, montones, conjuntos, tablas hash, etc.
  5. Por último, aprende sobre Linux. Aunque no ayudará mucho en la programación competitiva, será excelente a largo plazo.

La mejor de las suertes !

Es bueno que hayas hecho esta pregunta en esta etapa. En primer lugar, solo quédate con un lenguaje de programación por ahora. Mi recomendación sería python. Puedes unirte a este curso Introducción a la informática | Udacity

Además, comience a usar Linux e IRC. Disfrute de peleas de códigos y torneos de codificación CodeChef como sitios web.

Se debe solicitar una sugerencia más para GSoC (niños y niñas) y OPW (solo niñas).

Buena suerte 🙂