I'm new to ACSL. How can I get started?
Awesome! Welcome to ACSL! You found this website, so you are off to a great start. The best pages to look at are the Advisor Guide, Divisions, and Study Materials. And of course, the FAQs on this page. Many of the questions posed by other advisors and answered here are questions that you'll also have.
2a. I just completed the registration form. Why won't the Leaderboard let me login?
The Leaderboard is refreshed hourly with information from registration forms. If you've waited an hour (OK, give it 2 hours, just to be safe) and still cannot login, please send us an email. Your initial password is your email address.
2b. I just logged in to the Leaderboard. What next?
The first step is to go to your home page. There, you'll see entries for all the teams you have registered. Give each team a name and decide if it's a 3-person team or a 5-person team. Then, for each team, register the students who will be competing on that team.
3. Why do I need to register my students?
The online platform we are using, HackerRank for Work, requires an email address for sending out a link to participate in each contest. Students in the Senior, Intermediate, and Junior divisions will receive 2 emails - one containing a link to the Short Problems and the other containing a link to the Programming Problem. Students competing in the Classroom and Elementary Divisions will receive a single email for each contest.
4. Four dates are listed. Do my students take the test for just one date?
ACSL is a competition consisting of four regular-season contests. Students take all four tests. Certificates are awarded to top scoring teams and top scoring individual students in each US state and each non-US country based upon cumulative scores after the 4th contest.
Each contest is available online for about 2 months. There is a hard date by which we must receive scores. Please don't wait until the last minute! The online platform shuts down on the date listed in the Schedule page.
5. How many students can be on a team?
The advisor can choose to compete as a 3- or 5-person team. That decision is based upon how many students the teacher realistically thinks will be taking the tests each month. If the team is a small club then a 3-person team is the correct choice. If the team is a large class or multiple classes then a 5-person team might be the best choice. Certificates are awarded to top students and teams in both divisions.
A 3-person team can have at most 12 students; a 5-person team can have at most 20 students.
Your team score is the sum of the best 3 or 5 student scores that contest. Those best scores can come from different students each contest.
6. Can I have more than one team in the same division?
Absolutely! There is no limit to the number of teams a school can have in each division. We encourage multiple teams so that more students will have their score counted towards a team score. There is a small fee for each additional team.
(In past years, we only allowed a single team in each division.)
7. If I run an afterschool or weekend school, can I register a team?
Yes, but if a student in your program attends a full-time school that has an ACSL team, then that student can only be on the team from the full-time school.
8. Can I administer the 2 parts of the test in any order?
Yes, the teacher at each school decides on the schedule with the provision that all tests are administered by the listed end date for that contest.
9. What computer language can my students use?
Students can code in Python 3, Java, or C++. In some divisions, the Short Answer questions use other languages: ACSL Programming Language, LISP, and Assembly Language. Students do not need to code in those languages; rather, they only need to follow a short algorithm. That specifics of these new languages can be taught in one class period using the resources on the ACSL wiki.
10. What are the time limits for the tests?
Except for the Classroom Division, the time limit for the short answer tests is 30 minutes. The time limit for Classroom Division is 50 minutes. The time limit for all programming problems is 72 hours. That is running time. Students may logout and login again multiple times, but the time keeps running.
11. Why is my student's score not showing up?
The ACSL Leaderboard refreshes students scores from the HackerRank online platform every 2 hours.
If the score hasn't appeared after a few hours, the most common reason is that the advisor changed the student's email on the Leaderboard after the invitation to the contest was sent out. The score being "pulled" from HackRank is associated with the email to which the invitation was sent; that email address is no longer part of the ACSL Leaderboard system if the advisor has changed the student's email.
12. My student forgot to "submit" his test. What happens now?
The simple answer is "everything is fine". HackerRank will automatically submit the test when time expires. For Short Problems tests, which are multiple choice, whatever choices the student has are the ones that are submitted for scoring. For Programming Problem tests, each time the student Runs the program, the program is uploaded to HackerRank for execution; the last version that is Run is that score that HackerRank will use.
13. Can students collaborate?
Absolutely not. The ACSL tests must be completed individually. After students have completed the test, it's a great idea to work together to go over the tests, to learn from each other's mistakes, compare programming solutions, and to collaborate on the "most perfect" programming solution.
HackerRank requires that students are required to sign the following statement of honesty before starting:
I will not consult/copy code from any source including a website, book, or friend/colleague to complete these tests, though I may reference language documentation or use an IDE that has code completion features.
HackerRank has developed sophisticated algorithms for detecting plagiarism in programming solutions. Students found to be collaborating will score 0 points for that test.
14. My student's score is a 0. Surely there's a mistake in the Leaderboard!
The simple answer is "probably not". To see a student's test results, see FAQs #13 and #15.
15. How did my students do on each part of the contest?
As the advisor, login to the Leaderboard and go to your HOME page. From there, navigate to your team's roster (click on the name of the division). On that page, you'll see the score that each student has on each test. Next to the score is a PDF link; that link will open a report generated by HackerRank with the complete details of the student's test results.
17. What materials can students use during the tests?
Paper and pencil/pen are the only materials allowed. No calculators are allowed. Connecting to the internet to view code snippets or solutions is not allowed. Getting help from any human source is not allowed.
16. Why did my program run out of time?
If HackerRank returns "Your code did not execute within the time limits. Please optimize your code. For more information on execution time limits, refer to the environment page.", the issue is often caused by an infinite loop in the student's program or using a brute-force algorithm when more sophistication is needed.
17. Who is invited to the Finals?
The Finals competition is individual based. Top students from all schools will be invited. Students in the Classroom, Junior, Intermediate, and Senior Divisions must score 24 points or more. The cutoff for students in the Elementary Division is 12 or more.
18. What is the difference between the All-Star Contest and the Finals?
Pre-pandemic, ACSL organized an end-of-season competition for the top teams. Teams would meet at a common site for a day-long on-site competition. That event was call the All-Star Contest. Starting 2020, the end-of-season competition is for top students, regardless of how well their team did. The competition is online. To avoid confusion (or perhaps it has created confusion?), the online, student-based competition is called the Finals.
19. Can I register additional teams after I've completed the registration form?