Competitions · Computer science · ACSL

ACSL, the American Computer Science League.

Bit-string flicking, LISP, finite state automata, assembly language - a computer science syllabus rather than a programming contest. Four rounds a year, from grade 3 upward, and the questions are set in Chinese and English.

  • 4rounds a season
  • 3-12grades
  • 1978first held

At a glance

What the league is, and who backs it.

ACSL began in 1978 as the Rhode Island Computer Science League, became the New England Computer Science League, and took its present name as entrants arrived from further afield. ASDAN China has hosted the China region since 2018; in 2019-20 students from 322 international and key schools took part.

Since
1978
Recognition
Certified and recommended by the National Association of Secondary School Principals and the Computer Science Teachers Association
Supported by
Google, Adobe, No Starch Press, O’Reilly Media, Pearson, Pragmatic Bookshelf and Wolfram
Scale
More than 500 teams a year, from the United States, Canada, Europe, Africa and Asia
Who can enter
Students in grades 3 to 12
Language of the questions
Chinese and English
Programming language
Any language the student is comfortable with
Format
Individual or team. A team needs at least two members
Where
Online, at designated schools across the country. Students bring their own computer
Network
No WiFi or other network connection is permitted during the contest
Season
Four rounds - the first in December, then February, March and April - followed by an All-Star final in August
Advancement
The top 65% of teams and individuals in round one continue into rounds two to four

What makes it different

It examines computer science, not just programming.

Almost every other contest in this group asks you to solve a problem by writing code. ACSL spends half of each round asking what you understand about how computers work.

A written paper on theory

Thirty minutes, five questions, on topics like number systems, Boolean algebra, graph theory, regular expressions and assembly language. No computer required.

Then a programming challenge

A two-hour session with a single programming problem worth five marks. One problem, two hours - the emphasis is on getting it right rather than on volume.

Worked alone, even in a team

Team members must complete the programming problem independently without discussion, and each member submits their own answer.

Which suits a different student

A student who finds USACO’s speed and volume punishing may do considerably better here, where breadth of understanding carries as much weight as implementation.

The syllabus

Four rounds, and the topics are published in advance.

This is the most useful thing ACSL publishes: you know before the season starts what each round will ask about. Intermediate and Senior share topics, with Senior set harder.

RoundElementaryJuniorIntermediate and Senior
OneComputer number systemsComputer number systems, recursive functions, What Does This Program Do? - branchingComputer number systems, recursive functions, What Does This Program Do?
TwoPrefix, infix and postfix notationPrefix, infix and postfix notation, bit-string flicking, What Does This Program Do? - loopingPrefix, infix and postfix notation, bit-string flicking, LISP
ThreeBoolean algebraBoolean algebra, data structures, What Does This Program Do? - arraysBoolean algebra, data structures, finite state automata and regular expressions
FourGraph theoryGraph theory, digital electronics, What Does This Program Do? - stringsGraph theory, digital electronics, assembly language

Nothing here is guesswork. A student knows in December that round four will ask about graph theory and digital electronics, which makes a season-long study plan genuinely possible.

The four divisions

Choose by ability, within limits.

ACSL lets a strong younger student enter above their year but never below it, which is the right way round.

Senior, Intermediate, Junior

Senior suits experienced high-school programmers, especially those taking AP Computer Science - though the organisers advise against registering for Senior in a first ACSL season. Intermediate suits high-school students with some experience or older middle-schoolers. Junior is for middle-school students with none.

Elementary, grades 3 to 6

Non-programming questions only, testing the four written categories. Five questions in thirty minutes, individual scores only - no team of three required.

Upward is allowed

A strong primary student may enter Junior, Intermediate or Senior; a strong middle-schooler may enter Senior. Ability decides, not year group.

Downward is not

High-school students may not enter Elementary or Junior, middle-schoolers may not enter Elementary, and no student in grade 9 or above may enter Junior.

Scoring and awards

Individual and team scores, calculated differently.

Because every team member works alone, the team score is an average rather than a joint effort - which changes how a team should be built.

Individual score

The written paper plus the programming problem. Elementary students have a written score only.

Team score

The team’s average written mark plus its average programming mark. One weak member pulls the whole average down, so a small strong team beats a large uneven one.

Individual awards

Excellence for full marks across rounds two to four; High Score for the top 20% on individual points across those rounds; Individual Merit for the top 55%. Awarded separately in each division.

Team awards

Gold for the top 10% of teams, Silver the top 25%, Bronze the top 35%, and a Regional Merit award for the top 20% of teams in each region outside the national awards.

Preparation

How Hanlin prepares students for ACSL.

A published topic list and a four-round season make this the most schedulable computing contest here.

Teaching to the round

Round one is number systems and recursion; round four is graph theory and assembly. Preparation follows the published sequence rather than a general programming syllabus.

Covering the theory school does not

Bit-string flicking, LISP, finite state automata and digital electronics sit outside AP Computer Science and IB. They are the areas where a well-prepared student gains most.

Two separate kinds of practice

Five theory questions in thirty minutes needs speed; one programming problem in two hours needs care. Practising them together misjudges both.

And building the team deliberately

Team scores are averages, so a team of two strong programmers outscores a team of five uneven ones. That is worth deciding before registration rather than after.

Why Hanlin

Preparation for ACSL at Hanlin is taught by full-time subject tutors, on a course tier chosen by placement paper rather than by year group.

2017Founded
30,000+Students served
1,000+Schools represented
22Tutors on the roster

Programme formats

Five ways this is taught.

Group size is the whole difference between these. It decides how much of the tutor's attention a student gets and how far the course can bend to them, so it is worth choosing rather than accepting.

FormatGroup sizeWhat it suits
One-to-oneOne studentContent, pace and emphasis set by what this student actually needs rather than by a syllabus. The only format that can be rebuilt mid-course.
Small groupThree to eightOpens at three. Frequent discussion, and the tutor can slow down or move on according to what the group has absorbed. Most students chasing a higher award are taught in this one.
ClassEight to twelveTaught by the subject lead or a medal coach. Less back-and-forth, so it suits a student who will say when something is unclear.
Large classTen to twentyFor students in the middle of the placement range, and a way to try a competition before committing. Students often move to a small group or to one-to-one afterwards.
Past-paper classNo capPast papers worked through in sequence in the weeks before the sitting. Free to students already enrolled.

Course length for ACSL is set after a placement paper. The gap between where a student is and what the paper asks for is what the course has to close, and that gap is not the same for two students in the same year group.

How it runs

Six steps, four people on your side.

The same process for every student, so that nothing depends on one tutor remembering to do it.

Step 1

Pre-course assessment

A placement paper before anything is booked, so the course tier is chosen on evidence rather than on a year group.

Step 2

Tutor matching

A subject tutor is matched to the result, and their full background is provided before you agree to it.

Step 3

Plan and group

A study group opens with four people on one student: the tutor, a planner, a supervisor and an academic manager.

Step 4

Scheduled teaching

The teaching office sets the timetable around the competition date and school term, and teaching begins.

Step 5

After-class reports

What was covered, and how the student handled it, reported after every lesson.

Step 6

Homework follow-up

The teaching assistant and the form teacher both check that homework is done, which is where most preparation quietly fails.

Free resource pack

Past papers and preparation pack

The same material our own ACSL students work from. Scan the code, say what you need, and an advisor sends it.

Scan to consult on WeChat
Scan to consult on WeChat
Scan to ask on WeChat

Tell an advisor which competition and year group, and the material comes back the same day. Free, and you do not have to enrol in anything. If we do not already hold what you need, we will go and find it.

Usually asked forand more on request
  • PDFPast papers, every year the organiser has released
  • PDFWorked solutions, where the organiser publishes them
  • PDFThe syllabus on one page - every topic, and how heavily it is examined
  • PDFEntry checklist and the dates for the current cycle

Teaching team

Who would teach it.

Three of the twenty-two tutors on the published Hanlin roster - the ones whose subject this is.

Hanlin computer science tutor Luo
Computer science

Luo

Bachelor's and master's in computer science from the University of California and ten years in the United States. Works close to the hardware, and teaches for independent problem solving rather than pattern recall.

Hanlin mathematics and data science tutor Tan
Mathematics and data science

Tan

Master's in data science from the University of Sydney after a statistics degree at Simon Fraser University, graduating in the top 5% with repeated chancellor's honours; A-Levels at a Cambridge international school, and formerly a data analyst at Tencent. An AMC-accredited coach, a College Board-accredited AP teacher, and holder of a Math League excellent-teacher award.

Hanlin mathematics and computing tutor He
Mathematics and computing

He

A Cambridge master's after a computer science degree with a mathematics minor at the University of Nebraska-Lincoln, and a US high school GPA of 4.13. Six years overseas and teaches entirely in English, across AMC, Math League, AP Computer Science and AP Calculus.

Where it is taught

Hanlin learning centres.

Teaching runs from Hanlin's own centres in Shanghai, Shenzhen, Chengdu and Hangzhou, and online for students elsewhere.

Tiered forum space with university pennants at a Hanlin learning centre
The reception area at a Hanlin centre
A training room at a Hanlin learning centre
The student lounge at a Hanlin learning centre
A tutorial room at a Hanlin learning centre
A classroom at a Hanlin learning centre
The Hanlin education building in Shanghai

Talk to an advisor

Everything Hanlin does for ACSL, in one conversation.

Entry, planning, coaching and the past papers. An advisor will tell you which of these a student actually needs, including when the answer is none of them.

  • Competition entry and planning

    Which competitions suit this student, in what order, and by when - then we handle the registration, including the ones that can only be entered through a school or a centre.

  • Competition coaching

    Taught by full-time subject tutors, on a course tier chosen by placement paper rather than by year group.

  • International curriculum tutoring

    IB, AP, A-Level, IGCSE and the US high school curriculum, taught alongside school and timed around the exam calendar.

  • Competition past papers, free

    A large library of past papers, mark schemes and syllabus breakdowns across every competition on this site. No charge and no enrolment.

WeChat

Scan to add an advisor

Scan to consult on WeChat
Scan to consult on WeChat

Say which competition or course you are asking about. Replies in Chinese or English.

Or call +86 21 6352 6630

FAQ

ACSL, briefly answered.

What students, teachers and families ask before entering.

Who can enter ACSL?

Students in grades 3 to 12, in four divisions - Elementary for grades 3 to 6, then Junior, Intermediate and Senior. A strong younger student may enter a higher division, but never a lower one.

What is the format?

For Junior, Intermediate and Senior: a 30-minute written paper of five questions worth one mark each, and a two-hour programming challenge with a single problem worth five marks. Elementary sits five written questions in 30 minutes and does no programming.

Do team members work together?

No. Every member completes the programming problem independently without discussion, and each submits their own answer. The team score is the average of the members’ written and programming marks.

What language do I program in?

Any language you are comfortable with. The questions are set in both Chinese and English.

Can I use the internet during the contest?

No. WiFi and other network connections are not permitted, and students bring their own computer.

What topics come up?

They are published in advance. Round one covers number systems and recursive functions; round two prefix, infix and postfix notation, bit-string flicking and LISP; round three Boolean algebra, data structures and finite state automata; round four graph theory, digital electronics and assembly language.

How does advancement work?

Round one is the preliminary. The top 65% of teams and individuals continue into rounds two to four, and the leading teams across the four-round points series go to the All-Star final.

What awards are there?

Individually: Excellence for full marks across rounds two to four, High Score for the top 20%, Individual Merit for the top 55%. For teams: Gold at the top 10%, Silver at 25%, Bronze at 35%, plus a Regional Merit award for the top 20% of teams in each region.

Should a first-time entrant register for Senior?

The organisers advise against it. Senior suits experienced programmers, especially AP Computer Science students, and they recommend not starting there in a first ACSL season.

How does it compare with USACO?

ACSL divides its marks between computer science theory and programming, while USACO is entirely algorithmic problem-solving under time pressure. A student strong on concepts but slower at implementation usually does better here.

Related

Other computing contests.

What students commonly enter alongside ACSL.

ACSL enquiries

You know in December what round four will ask.

ACSL publishes its topics for the whole season, which makes a real study plan possible rather than general practice. Tell us the student’s year group and what they already program in, and an advisor will pick the division and map the four rounds.

Competition enquiries+86 21 6352 6630 Curriculum & test enquiries+86 21 6352 6628
Service citiesShanghai · Shenzhen · Chengdu · Hangzhou