since 2013 (aka A-Star before 2017)
(*: “Gold” division is named as “Platinum” after 2015.)
NOTE: Starting with the fall courses, there are minor changes in CS course codes and course titles. There are no changes in the course contents. Click to see the new course codes and titles
Program Overview
AlphaStar Computer Science Program aims to train students towards the USA Computing Olympiad (USACO) and similar competitive programming competitions. USACO is the most prestigious pre-college Computer Science competition in the US.
USACO System
The USACO holds periodic web-based contests during the academic year, and in the late Spring conducts the US Open, our “national championship” exam. Contests generally run for three to five continuous hours in length, although for maximum flexibility, you are free to schedule this block of time anywhere within a Friday-to-Monday contest weekend — your timer starts when you log into the contest and download the problems. Contest tasks are presented on the web, and you submit your final solutions through a simple web interface. Participation is free and open to all.
Bronze: for students who have recently learned to program, but who have no training in algorithms beyond basic concepts like sorting and binary search.
Silver: for students who are beginning to learn fundamental problem-solving techniques (e.g., recursive search, greedy algorithms) and fundamental data structures.
Gold: where students encounter more standard algorithms of a more complex nature (e.g., shortest paths, dynamic programming) and more advanced data structures.
Platinum: for advanced students who are well-grounded in algorithmic problem-solving techniques, who wish to challenge themselves with sophisticated and more open-ended problems.
All participants start in the bronze division, and those who score particularly well in a contest will be promoted to the next division. Contestants scoring particularly highly will be automatically promoted to the next division while a contest is running; others will need to wait until results are announced at the end of the contest to see if they meet the (contest-dependent) cutoff for promotion.
[*] Retrieved from USACO website. See http://www.usaco.org/ for further information on USACO.
Why AlphaStar Computer Science Program?
AlphaStar Computer Science Program has benefits to students in various ways throughout their lives. Some of the crucial ones can be summarized as follows:
Problem-solving skills: AlphaStar CS program helps students develop and improve problem-solving skills substantially as a lifelong skill.
AP CS Courses: AlphaStar CS courses have substantial overlap with AP Computer Science courses. A successful AlphaStar student can accomplish AP CS courses easily without much extra effort.
College applications: Top colleges such as MIT, Harvard, Stanford, UC Berkeley care about the distinguished skills of students since almost all their applicants have already outstanding scores in regular application items. USACO training track is one of the credible ones especially if a student is in the Gold division or above.
Engineering career: AlphaStar CS Program provides a strong foundation for college CS courses. In addition, one can observe the similarities between software engineering algorithmic interview questions of hi-tech companies and problem sets of AlphaStar CS Courses.
Distinguished Features of AlphaStar CS Program
The distinguished features AlphaStar CS Program can be summarized as follows:
Well-established curriculum and course material that has been developed since 2008 with continuous updates.
Provides a unique environment and opportunity to be a part of the AlphaStar community composed of high achieving and gifted students, parents, and faculty.
Top-notch teachers who are national/international level current or former Olympians.
Each student has an AlphaStar LMS course account where they can find all lecture materials, problem sets, solutions, and other resources. Code submissions for problem sets are graded by an automated system that provides instant feedback.
More than 1000 past USACO problems and solutions (since 2006) were carefully analyzed, updated, and integrated into our curriculum with respect to their scope and sequence considering their pedagogical aspects.
USACO tips, hints, and exam strategies from experts.
Implementations of language-specific topics in all Python, C++, and Java in Bronze and above courses
Provides free master course for exceptionally advanced students
Curriculum
Course Types
AlphaStar CS Program has three types of courses: (1) fundamental, (2) booster, and (3) practice test. The following table summarizes the difference between these types.
Fundamental Courses
Booster Courses
Practice Test Courses
Objective
Mastery of the programming language or the topics in that USACO level
Improving USACO score in a short time. Recommended after fundamental courses.
Timed practice exams to experience a real exam environment
Strategy
Learning the topics of the level and practicing by solving problems that require those topics
Focusing on exam strategies and solving extensive problems in various topics in that level
Exams strategies; how to approach and analyze the problem, find and implement the solution
Content
Topics of the level and former USACO or similar problems
Only former USACO or similar problems (problems are different than year-round courses)
Four exams similar to 1 year of USACO. All exams are prepared by AlphaStar.
Self-study
Available anytime
Available anytime
Available anytime
Live versions offered
During fall / winter / spring / summer
During winter break
During fall
Fundamental Courses
A fundamental live course can be offered in different paces at different times. Here’s the comparison of the same course offering options:
Live courses
Fall / Spring Terms
Summer
Pace
weekly session
daily session
Sessions
16 sessions
15 sessions
Session time
2 hours
3 hours
Homework (average)
1 hours per session
rarely
Total workload
32 instruction and practice hours +
16 hours of homework
45 hours instruction and practice
Exams
in-class
in-class
Note that summer courses require a little bit less time than the year-round ones since students do the practice in class with guidance and they are more focused. On the other hand, students need more time to digest the instruction in year-round courses due to their school work or other distractions.
Levels and Course Flow
The following chart shows levels and summarizes the flow of courses in the AlphaStar CS curriculum:
AlphaStar CS Program has 5 levels some of which have basic and advanced courses as follows (click to the course codes for course details):
Programming: These courses are for students with very little or no programming background. The aim is to teach the fundamentals of programming and to improve problem-solving skills. Note that the focus is not the language itself but problem-solving in these courses. At this level, there are four different language courses.
USACO Bronze: These USACO competing courses are for students who have programming and have an Algebra I level math background. This level has 2 fundamental courses, CC25F-1, CC25F-2, and a booster course CC25B.
USACO Silver: These courses are for students who compete in USACO Silver division. In this level, students are recommended to have AMC 10/12 level math background. This level has 4 fundamental courses, CC31F-1, CC31F-2, CC31F-3 and CC31F-4, and a booster course CC31B. In addition, CC31M: Ada Master Course is a free course for middle school students who are USACO Silver or above division contestants.
USACO Gold: These courses are for students who compete in the USACO Gold division. In this level, students are recommended to have AIME level math background. This level has 4 fundamental courses, CC41F-1, CC41F-2, CC41F-3 and CC41F-4 and a booster course CC41B.
USACO Platinum: These courses are for students who compete in the USACO Platinum division. In this level, students are recommended to have a USA(J)MO level math background. This level has 2 fundamental courses, CC51F-1, CC51F-2, and a booster course CC51B. In addition, CC51M: Turing Master Course is free for USACO Platinum division students.
NOTE: In USACO Bronze or above level courses, students can use any of Python, C++, or Java programming languages to solve the problems.
Course Code and Title Changes by Fall 2024
Old Code
Old Title
New Code
New Title
CS21A
Programming with Python - A
CS21F-1
Programming with Python - Part 1
CS21B
Programming with Python - B
CS21F-2
Programming with Python - Part 2
CS22A
Programming with C++ - A
CS22F-1
Programming with C++ - Part 1
CS22B
Programming with C++ - B
CS22F-2
Programming with C++ - Part 2
CS23A
Programming with Java - A
CS23F-1
Programming with Java - Part 1
CS23B
Programming with Java - B
CS23F-2
Programming with Java - Part 2
CC25A
USACO Bronze - A
CC25F-1
USACO Bronze - Part 1
CC25B
USACO Bronze - B
CC25F-2
USACO Bronze - Part 2
CC24
USACO Bronze Booster
CC25B
USACO Bronze Booster
CC31A
USACO Silver Basic - A
CC31F-1
USACO Silver - Part 1
CC31B
USACO Silver Basic - B
CC31F-2
USACO Silver - Part 2
CC35A
USACO Silver Advanced - A
CC31F-3
USACO Silver - Part 3
CC35B
USACO Silver Advanced - B
CC31F-4
USACO Silver - Part 4
CC34
USACO Silver Booster
CC31B
USACO Silver Booster
CC41A
USACO Gold Basic - A
CC41F-1
USACO Gold - Part 1
CC41B
USACO Gold Basic - B
CC41F-2
USACO Gold - Part 2
CC45A
USACO Gold Advanced - A
CC41F-3
USACO Gold - Part 3
CC45B
USACO Gold Advanced - B
CC41F-4
USACO Gold - Part 4
CC44
USACO Gold Booster
CC41B
USACO Gold Booster
CC51A
USACO Platinum - A
CC51F-1
USACO Platinum - Part 1
CC51B
USACO Platinum - A
CC51F-2
USACO Platinum - Part 2
CC54
USACO Platinum Booster
CC51B
USACO Platinum Booster
AlphaStar CS Curriculum vs School CS Curriculum
School Courses
AlphaStar Courses
Explanation
Middle / High school
Intro to Programming
Programming with Python / C++/ Java
AlphaStar courses focus on in-depth problem solving rather than the language details and object oriented part of the language as in school courses
AP CS A
USACO Bronze
USACO Bronze contains some of the topics of AP CS A course but doesn't include object-oriented and software engineering topics. In terms of problem set, USACO Bronze is way more difficult than AP CS A course.
College sophomore year
Data Structures
USACO Silver
College junior year
Algorithms
USACO Gold
Graduate level
Advanced Data Structures and Algorithms
The most enjoyable parts about the course was being able to see the end results of codes that I worked on for a long time. In this course, we learned so many different subjects in such a short time which leaves us with a lot of things to explore and be innovative about.
Neha
Student
I highly recommend this course if you are a beginner in coding and computer science. I am excited to take their USACO preparatory classes as well. The course is informative and in depth, which I very much enjoyed.
Gia G
Student
The instructor did a great job! AlphaStar seems like one of the best places to learn coding/USACO.
Zachary S
Student
This course in my experience has been extremely good. From the organization to the quality of teaching, it has saved a great deal of time and has allowed me to learn so much. My instructor Kyle Fu has been very supportive, and I recommend him to anyone interested in this course.
Corey Z
Student
I liked the structure of lessons, chapter reviews, exams, and projects. The projects were fun as well as the Kahoots. Overall, it was a great course.
Keon W
Student
It was fun to learn and it make me like coding more.
Manu K
Student
The instructor really tries to encourage everyone to participate and takes all ideas/comments and either takes or improves on them. I really appreciate how much he shows that he cares about his students and how they learn, as well as taking everything they say seriously.
Tyler
Student
The course provided a lot of relevant practice and helped me pass Bronze on my first try, after only 7 months of learning java!
Anna
Student
I liked how this class showed us how to approach problems, and not just algorithms. We had time to consider how to solve problems and discuss it before going to the actual solution.
Yash C
Student
The best computer course I have taken. One of the best teachers I have had.
William Z
Student
I liked that I got to learn a lot about Computer Science, and I liked how the teachers and other peers made a positive learning environment. I also liked how the exercises and homework got me pulled into coding.
Christopher X
Student
The course helped me understand how to approach different types of problems in java through the various lessons, problems, and projects. The course framework is designed well, and the instructor ensured that everyone understood the concepts before moving on.