Lo he estado haciendo bien en los concursos largos de CodeChef (6 o 7), pero cuando se trata de concursos cortos, generalmente no puedo hacer más de 2. ¿Dónde me falta? ¿Qué se puede hacer para mejorar mi rendimiento?

Será difícil realizar una competencia corta o una larga, ya que es difícil resolver 6 o 7 problemas en una competencia donde solo se presentan 5 problemas

Bromas aparte, ¿cuál es su criterio de desempeño bueno / malo? Revisé las posiciones de junio, 66 personas resolvieron la 8ª tarea; Mayo largo – 55 personas resueltas 8vo. Ahora concursos cortos: junio: 78 personas resueltas el 3º. Mayo: 68 personas resueltas la tercera. Como puedes ver, los números están bastante cerca. Y puede ser relativamente alto en la clasificación en caso de que resuelva 2 problemas rápidamente.

Y el octavo problema del concurso largo suele ser significativamente más difícil que la tercera tarea de un concurso corto. ¿No podría resolver ese problema en caso de tener una semana completa en lugar de un solo concurso corto? No lo creo (porque de alguna manera estás resolviendo problemas más difíciles). Entonces, ¿por qué no puedes resolverlo durante un concurso corto? ¿Te faltan ideas? ¿Puedes tener una idea adecuada pero no puedes implementarla / depurarla a tiempo? Hágase algunas preguntas similares y comprenderá lo que necesita mejorar.

La práctica debería ayudarlo 🙂 En concursos cortos, en realidad le da mucho. Después de un poco de práctica, no tendrá que dedicar un tiempo a resolver los primeros 2-3 problemas, porque serán estándar / conocidos para usted, y También dedicará menos tiempo a implementarlos, porque tendrá mejores habilidades de codificación.

Una cosa más. No sobreestime su nivel en concursos largos después de ver las posiciones. No es un indicador muy preciso. Imagina que alguien comienza un concurso corto, dedica 20-30 minutos en él y luego dice “oh, es aburrido, lo dejo ahora”. ¿No suena como una práctica común? Correcto, la mayoría de las personas están haciendo todo lo posible durante todo el concurso. Y ahora, ¿cómo piensa usted, cuántas personas están trabajando en un concurso largo durante todo el día durante 10 días? Si está trabajando duro, puede vencer a muchas personas que, de hecho, son más hábiles que usted y pueden resolver más problemas / problemas más difíciles en el mismo tiempo fijo. Simplemente no les importa mucho ese concurso largo, lo que te da la oportunidad de ganarles.

Juzgar su desempeño por la cantidad de problemas resueltos en lugar de la calificación / clasificación no es la mejor idea.

Las cosas para enfocar en concursos cortos que son menos importantes para concursos largos son:

  • Buenas habilidades de comprensión, es decir, asegúrese de que puede leer la declaración del problema rápidamente, comprender los requisitos y estar listo para codificar en uno o dos minutos.
  • Posibilidad de escribir código libre de errores en el primer intento. Intente minimizar el tiempo que dedica a corregir los errores de compilación y luego ejecute e incorpore los casos de borde después de eso. Trate de hacer toda la simulación de compilación y prueba en mente leyendo el código en sí.
  • Tenga un buen conjunto de plantillas listas. Puede obtener un BFS o un BIT o Matrix Exponentian o un problema de Sieve en el que cierta parte se puede usar como biblioteca, en ese caso es útil para tenerlas listas como plantillas o biblioteca que para escribirlas nuevamente.