En primer lugar, es increíble que pueda resolver 4 preguntas en codechef long y 2 en codeforces div2. Pero aún tienes un largo camino por recorrer. Mi consejo sería practicar más y más en sitios como SPOJ, CodeForces, CodeChfef, etc. Has hecho 100 preguntas. GENIAL !!!. Ahora haz ese 200. Hacer esto te haría consciente de tus puntos débiles.
Esto ayudará a fortalecer STL y ayudará a categorizar cualquier problema cada vez que lo vea. Al categorizar me refiero a qué posible desglose del problema es posible a partir de lo siguiente (que conozco actualmente):
- Implementación ad hoc , es decir, simplemente basada en lógica. No se requiere una estructura de datos específica o un algoritmo específico para estas preguntas. Los considero rompecabezas.
- Problemas basados en gráficos o en árboles , como encontrar las rutas más cortas entre 2 nodos o problemas de flujo de red o resolución de laberintos o cualquier otro problema que pueda transformarse en un problema de gráficos donde los algoritmos como DFS, BFS, Dijkstra, Bellman Ford, etc. puedan usarse de manera eficiente para resolver el problema
- Programación dinámica donde tienes que probar todas las posibilidades pero “CLARAMENTE”.
- Enfoque codicioso donde la solución óptima localmente conduce a una solución óptima global.
- Problema basado en cadenas donde la mayoría de las veces tiene que ver con árboles Suffic, matrices Suffic, algoritmo Z, KMP, etc.
- Tal vez tenga algo que ver con alguna estructura de datos avanzada, como árboles de segmentos, árboles indexados binarios, estructuras de datos persistentes, etc. Estos problemas son generalmente difíciles de codificar y solo pueden resolverse de manera eficiente si ya ha practicado problemas similares anteriormente.
- Algún problema avanzado basado en las matemáticas .
- Algo que ver con la teoría de los números, donde tenemos 2 jugadores y un plan de juego frente a nosotros, y tenemos que responder una determinada pregunta relacionada con el resultado del juego en varios escenarios.
- Finalmente, puede ser una combinación de cualquiera de los siguientes que mencioné anteriormente y que usted debe resolver.
Ahora necesita leer mucho y, gracias a la increíble comunidad de codificación que tenemos, esta publicación en CodeChef es una LISTA DE SUEÑOS (al menos para mí) en lo que respecta a los algoritmos más comunes para la programación competitiva.
Estructuras de datos y algoritmos
Por favor revisa esto y una vez más,
Feliz codificación !!!!
- ¿Cómo es la educación, la infraestructura del Indraprastha Dental College y el hospital cerca de Gaziabad?
- ¿Debo elegir ingeniería mecánica en la Universidad PES o NIE en Mysore?
- ¿Debo ir a la Universidad de Waterloo o McGill para la ingeniería eléctrica?
- ¿Cuál es el mejor IIT? ¿Por qué?
- ¿Es cierto que los últimos benchers en las universidades brillan más en su vida que los primeros benchers?