Actualmente estoy en USACO Gold, pero apenas puedo resolver nada. ¿Qué debo hacer para ser más competente? ¿Dominar el oro es solo una cuestión de aprender toneladas de algoritmos, o necesita más que eso?

Dividiré esta respuesta en dos partes: una que habla sobre el oro (2014-2015) del año pasado (platino de este año) y el oro de este año (2015-2016).

Oro de este año:

Esto es análogo a Silver de 2014-2015. Esto es solo un paso por encima de algoritmos simples como DFS, BFS y mucha fuerza bruta. Los temas de oro (2015-2016) son los siguientes:

Algoritmos gráficos (caminos más cortos: Dijkstra, Bellman Ford, Floyd, etc.
MST (árboles de expansión mínima): Prim’s, Kruskal’s; Union-Find Algo),
Técnica de línea de barrido,
Programación dinámica / mochila,
Codicioso,
búsqueda binaria,
geo computacional,
temas de bronce + plata, etc.

Oro del año pasado :
Lo complicado de estar en la primera división de una competencia es que se te puede arrojar cualquier cosa, ya que eres uno de los mejores del país. Al igual que en el concurso más reciente (enero de 2016), surgió un problema de árbol de segmento 2-d y una pregunta de dp realmente difícil.

Entonces, ¿cómo cubres esto? Bueno, una observación es que necesita conocer algunos algoritmos más aquí y allá (hacer competencias de CodeForces semanalmente y aprender los algoritmos funcionará aquí). Pero, saber no es lo único que debes poder hacer; necesita comprender algoritmos específicos y cómo se aplican.

La diferencia entre la división superior y la siguiente es saber cuándo deben aplicarse los algoritmos / estructuras de datos y cómo cambiarlos para que funcionen en su propio beneficio. Puede leer más sobre esto del Usuario de Quora:

¿Qué algoritmos son necesarios para que pueda tener un buen desempeño en USACO Gold?

Honestamente, es bastante difícil dominar todos los temas, porque siempre habrá temas que nunca has visto antes. Por lo tanto, estar expuesto a muchos temas, lo que significa hacer muchos problemas es clave. Leer soluciones / editoriales. Encuentra cómo funciona el algoritmo. Estúdialo. Luego implemente y practique en más problemas.

Me gusta cómo CodeForces tiene etiquetas como estas. Usa esto para tu ventaja. También mire las competiciones pasadas de USACO. Esto definitivamente te beneficiará. ¡Buena suerte!

¡Gracias por preguntar, Bennett!

Bueno, el nivel de USACO Gold es actualmente análogo a Silver antes del cambio de niveles. Por lo tanto, todo lo que necesita, en términos de algoritmos, son dijakstra, primm y programación dinámica.