¿Cuáles son algunos buenos cursos sobre programación competitiva?

Si está preguntando sobre recursos para aprender sobre la competencia en sí y sus reglas, esto será suficiente: Concurso internacional de programación colegiada de ACM – Wikipedia

En caso de que solicite materiales para estudiar programación competitiva, entonces puedo decirle 4 grupos de enfoques:

Grupo 1:

Encuentre un buen entrenador para trabajar, él sabe qué hacer con usted, generalmente es el entrenador de su facultad o universidad, o puede unirse al capítulo de ACM en su universidad o país, ellos le enseñarán.


Grupo 2:

Vaya con un libro de programación y competiciones como la programación competitiva 3, consulte esto para obtener más detalles:
La respuesta de Abdelrahman Hamdy a ¿Qué libro es el mejor para prepararse para el IOI, la Programación competitiva 3 de Halim o los Desafíos de programación de Skiena?


Grupo 3:

Cursos en línea, y hay pocos de ellos, por ejemplo:

Cómo ganar competiciones de codificación: secretos de campeones
CS 97SI: Introducción a los concursos de programación
¡Una lista increíble para programación competitiva! – Fuerzas de código
Curso de programación competitiva – Codeforces
CS104c: Programación competitiva
Página de inicio de Tim Korb
Programación competitiva en C ++
Programación competitiva – Comunidad en Commonlounge
https://acm.wustl.edu/cse232/
CS3233 – Programación competitiva
CS1090 – Programación competitiva
Material de apoyo – Programación competitiva
Programación competitiva – Unacademia


Grupo 4:

Aprender haciendo:

Creo que este es el mejor comienzo para un principiante es comenzar a resolver los problemas desde el más resuelto hasta el arrendamiento resuelto, puede encontrar esta lista aquí:

Conjunto de problemas – Codeforces

También puede usar el A2OJ, es un sitio web creado para gestionar los problemas y agruparlos: Juez en línea A2

encontrará una lista de los problemas As, Bs, Cs, etc., con su nivel de dificultad, por ejemplo:

A: Juez en línea A2

y encuentra a los otros aquí:

A2 Juez en línea

Todos los problemas de CodeForces, el sitio web solo los gestiona y los agrupa, pero los problemas del propio A2OJ son realmente malos, y el sitio web en sí tiene muchos errores, así que solo úselo para organizar la práctica.


En caso de que elija uno de estos caminos, necesitará tener una forma sistémica de entrenamiento como este:
La respuesta de Abdelrahman Hamdy a ¿Cuál es el enfoque correcto para resolver preguntas de práctica de programación competitiva?

También verifique estos:
La respuesta de Abdelrahman Hamdy a ¿Cuáles son los conceptos que uno debe saber antes de ir a la programación competitiva?

¿Cómo puedo ser bueno en la programación competitiva? ¿Hay algún curso que me lleve un paso adelante antes de comenzar a hacer problemas SPOJ o TopCoder? Soy bueno en estructuras de datos.

Puedo recomendar los siguientes cursos:
Algoritmos de Coursera Parte 1 – Página en coursera.org
Coursera Algorithms Part 2 – Página en coursera.org
Aprenderá algoritmos fundamentales y estructuras de datos.

Programación competitiva 3: el mejor libro, en mi opinión, para principiantes en programación competitiva.

Algoritmos, matemáticas y programación: problemas y apuntes de un curso universitario de programación competitiva

Permítanme comenzar definiendo lógica y científicamente la terminología de la programación competitiva; La programación competitiva es un deporte mental generalmente realizado a través de Internet o una red local, que involucra a los participantes que intentan programar de acuerdo con las especificaciones proporcionadas. Los concursantes se conocen como programadores deportivos. Hay muchos cursos buenos en programación competitiva, siempre depende de ti y de lo que quieres aprender y de lo que quieres lograr y tu objetivo final de aprender estos cursos. Asistir a cursos sobre algoritmos, HTML 5, C ++, el sitio oficial de Microsoft ASP.NET, C # y muchos otros cursos puede ser de gran utilidad para la programación competitiva. Pero para aprender los mejores cursos bajo la supervisión de los mejores programadores y desarrolladores de computadoras en la arena, la Escuela Holberton es donde debe ir para hacer eso. te ayudarán mucho en este largo proceso de aprendizaje de programación y lo acortan a medida que los expertos y los profesionales de programación / desarrolladores web te ayudan no solo a aprender las habilidades técnicas de programación de software y desarrollo web, sino que también te pueden ayudar en el trabajo que se ajusta a tu trabajo habilidades y capacidades. La programación competitiva también es lo que podrá aprender en la escuela a un nivel muy alto.

Primero, aprenda cualquiera de estos lenguajes: C, C ++, Java, Python. Tutorialspoint tiene un excelente tutorial para principiantes para estos idiomas. Recomiendo estos lenguajes, ya que son los estándares, utilizados en cada concurso de programación.

Si ya está familiarizado con C, vaya con C ++. C ++ es el lenguaje más popular entre los programadores debido a su velocidad.

Después de eso, ingrese al mundo de las estructuras de datos y algoritmos. Estos dos enlaces son suficientes: Estructuras de datos y Algoritmos .

Para la ejecución en línea de su código, visite Ideona Las ventajas de la ejecución de código en línea es que no es necesario descargar compiladores en su sistema.

Para practicar la programación, los OJ recomendados (jueces en línea) son: SPOJ y Codechef.

Para competir en línea, debe registrarse en Topcoder, Codeforces y Codechef.

La programación competitiva no es un lenguaje que puedas aprender. Es una competencia entre programadores. Los programadores de diferentes regiones compiten entre sí. Entonces nadie puede enseñarte eso.

Aunque puede llegar a ser bueno aprendiendo un lenguaje como C ++ o Java o cualquier otro lenguaje OOPS. Una vez que haya completado un idioma, comience a aprender Estructuras de datos y Algoritmos, ya que necesita saberlos para resolver problemas en la programación competitiva.

Algoritmos más básicos: –

  • La función de Euler y su cálculo [TeX]
  • Exponenciación binaria en O (Log N) [TeX]
  • Algoritmo de Euclides para encontrar el MCD (máximo común divisor) [TeX]
  • Tamiz de Eratóstenes [TeX]
  • Algoritmo euclidiano avanzado [TeX]
  • Números de Fibonacci y su cálculo rápido [TeX]
  • Elemento inverso en el módulo de anillo [TeX]
  • Código gris [TeX]
  • Aritmética larga [TeX]
  • Logaritmo discreto módulo M algoritmo baby-step-giant-step Shanks para O (sqrt (M) Log M) [TeX]
  • Ecuaciones de diofantina con dos incógnitas: AX + BY = C [TeX]
  • Ecuación lineal lineal de primer orden: AX = B [TeX]
  • Teorema del resto chino. Algoritmo de Garner [TeX]
  • Encontrar divisor de potencia factorial [TeX]
  • Valor del sistema equilibrado ternario [TeX]
  • Factorial N! módulo P para O (N Log P) [TeX]
  • A través de todos estos subpatterns de máscara. Grado 3 N para el número total de todas las máscaras de subpatrones [TeX]
  • Raíz primitiva. Algoritmo para encontrar [TeX]
  • Extracto de raíz discreto [TeX]
  • Tamiz de Eratóstenes con tiempo de ejecución lineal [TeX]

Para más algoritmos también verifique esto: – Estructuras de datos y algoritmos

Por último, debe practicar sus habilidades e intentar resolver todos los problemas que pueda.

Para practicar, pruebe estos:

  • Mayor número de problemas: – Sphere Online Judge (SPOJ)
  • Tema inteligente: – Juez en línea de UVa – Inicio

Sitios de programación competitiva: –

1. http://www.topcoder.com

2. http://www.codeforces.com

3. http://www.hackerrank.com

4. http://www.codechef.com

5. http://www.hackerearth.com

Happy Coding .. 🙂

La programación de Skiena desafía las conferencias
Steven Skiena

A continuación se presentan los lados de video y conferencias del curso Desafíos de programación 2009.

Si lo encuentra útil, también vea las conferencias en video de mi curso de Algoritmo.
Donde podrás aprender:
Desafíos de programación en los siguientes temas:
Instrumentos de cuerda
Estructuras de datos
Clasificación
Aritmética y Álgebra
Combinatoria
Teoría de los números
Retroceso
Recorrido del gráfico
Algoritmos Gráficos
Programación dinámica
Geometría
Geometría Computacional

Aquí el enlace: COMP300E – Desafíos de programación – 2009 HKUST

También puede referirse a este: T-414-ÁFLV: Un curso de programación competitiva – Bjarki Ágúst Guðmundsson

Espero que esto te ayude a ponerte en marcha. Gracias por A2A Swarathesh Addanki. ¡Te deseo la mejor de las suertes y que tengas un buen día!

Además de cursos populares como el curso de programación competitiva – Codeforces, https://unacademy.com/competitiv …, estos cursos en su mayoría le proporcionan videos. Sin embargo, si está buscando algo intensivo que aumente su rendimiento en los concursos de codificación, debe inscribirse en EMINENCE, un curso de programación competitivo en línea en https://www.codingninjas.in/app/

El curso cubre temas importantes de la programación computacional. Brevemente son, teoría de números, programación dinámica, gráficos, enmascaramiento de bits, algoritmos codiciosos, geometría computacional, consulta de rango mínimo. Puedes ver el desglose completo del curso aquí Codificación de Ninjas .

El apoyo en línea completo será proporcionado por TA y mentores de institutos eminentes como Stanford, IIT y DTU. Será un curso detallado de 3 meses y se proporcionarán muchas tareas, pruebas y material de estudio para el mismo.

EMINENCE comienza el 1 de octubre de 2017. Las inscripciones ya comenzaron, regístrese en Coding Ninjas. También puede aprovechar su versión de prueba gratuita aquí Coding Ninjas para echar un vistazo a la interfaz y tener una idea del curso.

Consulte para obtener una descripción más detallada y las revisiones del curso en línea:

¿Cómo es el curso en línea C ++ en Coding Ninjas?
¿Cuál es su opinión de Codificación Ninjas?
¡Codifique su camino a través de la programación competitiva!

Según mi conocimiento, las mejores sesiones de capacitación a las que he asistido son ENTREVISTAS INTELIGENTES donde aprenderás todos los conceptos en profundidad.

Obtendrá muchos problemas para mejorar sus habilidades como desee y muchas notas / material para la preparación.

Aquí recibirá capacitación de tal manera que pueda abordar y codificar cualquier problema desconocido.

Se convertirá en un programador experto después de completar el curso y la habilidad para resolver problemas se convertirá en su mayor fortaleza en las entrevistas de empresas basadas en productos.

Para más detalles sobre la visita del curso:

Demostración gratuita de entrevistas inteligentes: estructuras de datos y algoritmos

Realmente no conozco ningún curso, pero me gusta practicar en páginas como mathfights, codeforces y codefights. Si tiene problemas con los algoritmos, hay muchos cursos al respecto en edx o coursera, espero esta ayuda. Ciencias de la Computación

En primer lugar, no estoy de acuerdo con las personas que prefieren cursos / sitios web en línea para aprender cualquier lenguaje de programación. Esas cosas en línea pueden ser buenas, pero no son suficientes para convertirte en un buen programador.

Los mejores amigos de un programador de computadoras o un principiante son los libros. Sí, los libros pueden ser demasiado largos, pero contienen todos los temas importantes que cualquier persona necesita saber.

Todo lo que necesitas son Tutoriales de Topcoder (Tutoriales de Algoritmo)

Entrevistas inteligentes del Sr.Amit bhansal. Él es el mejor

Google “entrevistas inteligentes” para más información.