-
-
Solve Mode provides a distraction-free way to solve problems and focus on crucial problem-solving skills.
-
Mock Contests simulate the USACO contest format, which helps students improve their speed and time management for the contest.
-
Categorize USACO problems by your progress on them and easily view your statistics.
-
Search hundreds of USACO problems with ease with Algo's built-in problem searcher.
-
Want to view a problem? Click on a problem in Search and instantly view the problem distraction-free.
Algo
USACO problem randomizer and trainer built for competitive programming enthusiasts.
https://algousaco.com
About Algo
As more people get into competitive programming and the USACO, more resources are available to help you prepare for the competition. However, there was one piece missing- practice. It's essential to learn the concepts and techniques, but it's equally, if not more important, to practice them. Until I created Algo, there were two options: randomly clicking on previous contests' problems or using train.usaco.org.
However, clicking on problems randomly is inefficient, and train.usaco.org is incredibly outdated (most of the website hasn't had a refresh or update since the early 2010s). So, I created Algo to help people practice USACO problems and help them get ready for the USACO.
Algo is a web application designed to supercharge your USACO training. It randomly generates problems from past contests so that you can practice them. Algo will process and show the problems in a simple, clean interface. After solving the problem, you can submit your solution to the USACO website to check if your program works.
Tech Stack
Algo is built with the following:
What I learned
During my work on Algo, I gained a lot of experience in a range of frameworks and programming languages. Mostly, I learned new features of Vue.js, used Chart.js in statistics, and learned how to integrate KaTeX into my application. I also enhanced my skills in Firebase, HTML, and web development as a whole.


Log in or sign up for Devpost to join the conversation.