Hola,
Creo que está en una muy buena posición para comenzar, ya que mencionó que conoce algunos conceptos básicos de estructuras de datos y algoritmos. Desde mi punto de vista, practicar más y más problemas puede mejorar su capacidad de resolución de problemas. Nunca renuncies a un problema antes de intentarlo por al menos 1-2 horas.
Si es un principiante, le sugiero que tome un curso de capacitación en USACO Training Program Gateway. La mejor parte de la capacitación de USACO es que los problemas se organizan desde los más básicos hasta los más difíciles.
Codechef:
- Me voy a unir a una empresa de publicidad en línea. ¿Cuáles son las habilidades, precauciones y cosas necesarias que necesito saber y hacer para sobresalir?
- Fuck Reactor me rechazó y me siento devastado. ¿Qué debo hacer para prepararme para ser aceptado por un instituto?
- Soy un principiante de ajedrez sin clubes de ajedrez locales. ¿Cuál es el mejor camino hacia 1200?
- Soy un desarrollador de Extracción-Transformación-Carga (ETL) que trabaja en DataStage durante los últimos 10 años. ¿Qué nuevas tecnologías / habilidades debo aprender ahora para sobrevivir en el mercado laboral durante los próximos 10 años?
- Tengo el pelo largo. Quiero que se queden cortos. ¿Qué peinado debo obtener?
Aquí hay algunos problemas con los que puede comenzar:
TEST, INTEST, TSORT, FCTRL2, ATM, DOUBLE, HS08TEST, FLOW004, HOLES, RRCOPY, MAXDIFF, MAXCOUNT, NEWSCH, RAINBOWB, TREEROOT, etc. Ordene los problemas por “precisión”, no “presentación exitosa”.
Código de Google jam:
Pruebe los problemas A y B de las rondas de calificación de los últimos años.
Fuerzas de código:
Intente practicar en orden descendente de precisión.
No necesita tener un conocimiento completo antes de comenzar. Sigue practicando y aprendiendo teoría al mismo tiempo.
Después de hacer el capítulo 1 de capacitación de USACO y las preguntas de codechef (que mencioné anteriormente), fácilmente hará al menos 2 preguntas en concursos reales.
¡Buena suerte!