Me recuerda a mi propia historia. Yo también caminé por ese camino. Su capacidad para resolver ad-hoc me dice que puede pensar bien en soluciones y que sus habilidades de implementación también son bastante buenas. Lo que necesita es el conocimiento de matemáticas discretas, estructuras de datos y algoritmos y la aplicación de esos conceptos.
Resolver mil problemas pidiéndole que agregue N enteros no ayuda. Empújese fuera de la zona de confort. Si un problema no le enseña cosas nuevas, entonces no será tan útil aparte de aumentar su velocidad de escritura.
Cuando aprende nuevos conceptos, lleva tiempo y es posible que no pueda resolver 4 problemas al día. Tenga en cuenta que lo que aprendió y cómo mejoró también es importante, además de la cantidad de problemas resueltos. (Lea el segundo párrafo nuevamente)
Vea los problemas que lo harán pensar mucho. Intenta aplicar los conceptos que ya conoces. Si todavía está atascado, lea el editorial, aprenda los conceptos mencionados en él. Lo más probable es que obtenga los enlaces en el editorial en sí. Luego lea el editorial nuevamente e intente comprender lo que está sucediendo, primero de manera intuitiva y luego matemáticamente (ambos son importantes, aunque la intuición no siempre funciona). Implemente la solución por su cuenta. Luego lea el código de otros si tiene acceso a él (en sitios como Codechef, puede) para ver si hay una mejor manera de implementarlo. Pero, de repente, no saltes de un nivel principiante a un nivel difícil. Definitivamente te asustará. Ir en pasos progresivos en lugar de saltos abruptos.
- Cómo mejorar mis habilidades de piano
- ¿Cuál es la mejor estrategia para mejorar mis habilidades en programación competitiva en C ++ en 2-3 meses?
- Cómo mejorar mis habilidades de enmarcado
- ¿Qué habilidades necesito aprender para convertirme en un hacker informático?
- Si pudieras profundizar en un principiante cocina tres habilidades esenciales, ¿cuáles serían?
Recuerda que tienes que aprender cosas sobre la marcha y mejorar. Nunca pienses que aprenderé todos los conceptos en programación competitiva y luego resolveré problemas. No funciona Cometí ese error hace algún tiempo y por favor no lo hagas.
Historia personal: hace unos años, intenté resolver REVERSE en Codechef. En ese momento no conocía el algoritmo de ruta más corta de Dijkstra y lo intenté durante dos días sin éxito. ¡Luego aprendí el algoritmo después del concurso y fue sencillo!