2020 Fall – USACO Bronze (JAVA )


For many students interested in high level programming, the USA Computing Olympiad (USACO) is a big deal!


The United States of America Computing Olympiad (USACO) is a computer programming competition primarily for high students in the United States. This national competition is in the form of an online exam and participants have 4 hours to complete 3-4 tasks. Participants use algorithms and data structures written in C, C++, Pascal, Java, or Python to create solutions to these problems, and scores for each problem depend on how many input cases the program can solve within the time limit.

First time participants begin at the bronze level. As their scores improve, they can move up through the silver, gold, and platinum divisions.

Any student with an intermediate knowledge in a programming language can try out the contest. You may find it difficult, but there’s no penalty for trying and you can keep improving at your own pace! As you compete you may learn more than what you knew previously, resulting in better results in the next round.

Why so many students compete in USACO every year?

  1. USACO is prestigious, and competitors who do well will get a massive leg up on their college applications or resume because this exam covers high level material that students typically study in the first two years of undergraduate computer science degrees.
  2. It’s difficult. This means that it is great training for writing algorithms and practicing high-level problem solving.
  3. It has 4 levels of difficulty and 4 competitions per year, meaning you have multiple chances to try!

USACO Bronze (JAVA) Course Syllabus

This class helps students prepare for the USACO competition in December 2020.

Lesson 1: Basic Data Structures

    • Dictionary (map)
    • Dictionary practical questions

Lesson 2: Basic Data Structures

    • Sets
    • Sets practical problems

Lesson 3: Basic Data Structures

    • Stack
    • Queue
    • Lists, Stack, Queue practical problems

Lesson 4: Sorting and searching

    • Selection sort
    • Insertion sort
    • Bubble sort

Lesson 5: Sorting and searching

    • Quick sort

Lesson 6-12:Bronze-level Questions Practice

Previous experience with JAVA is required for this course. We do not teach any basic syntax in this class.

Course Features

  • Grade G9 - G12 (This Fall)
  • Max Enroll 6
  • Class Time 10:45 am – 12:15 pm, Sundays (9/20 - 12/13, no class on 11/29)
  • Class Location Online
$336 Tuition
Qi Xia, graduated with a Master degree in Electronic Engineering and a Master degree in Computer Science, currently works for an automotive company in the field of Android Application Development. He has participated in the development of “Ford Pass" and “Lincoln Way” – new generation android apps that can realize real time control of your vehicle in an Artificial Intelligent way. Qi has taught several AP classes at different education institutions for several years, including AP Physics, AP Calculus, AP Statistics, and AP Computer Science A.