Skip to main content

Syllabus

Instructor

Zilin Jiang
Email: [email protected]
Office: Wexler A839

Meeting Information

Location: BYAC 110
Time: Mondays and Wednesdays, 10:30AM–11:45AM
Exceptions: All class activities (lectures, office hours, weekly competition and so on) between March 18 and March 23 are canceled due to ICPC NAC 2026.

Office Hours

Time: Mondays 12PM–1PM, and Thursdays 2PM–3PM
Zoom: Link (ASU credentials required)

Onboarding

Please complete the onboarding form (No longer accepting responses)

Discord Server

[Discord server link to be provided through private communication]

You may use C++, C, Java, Python, or Kotlin in this course.

C++ is highly recommended for competitive programming due to its speed, standard library support, and the prevalence of C++ solutions in contest editorials.

Weekly Competition

Weekly 2-hour in-person contests will be held.

Location: BYENG 222
Time: Fridays, 1PM–3PM

  • 2 points per problem solved during the contest
  • 1 point per problem solved within one week after the contest

How to Prepare for the Weekly Competition

  • Use in-class problems for practice: treat them as your main warm-up set and try to re-solve them after class without looking at solutions.
  • Review the notes: course notes (and any additional resources) will be posted on the class website. Use them to fill gaps and build a consistent toolkit.
  • Build contest habits: practice reading carefully, writing clean implementations, and doing quick post-contest reviews of mistakes.

Codeforces Competition

Students can earn credit by participating in Codeforces rated contests:

  • 2 points per problem solved in Division 1 and Division 2 contests
  • Division 2 Problem A is excluded from credit
  • Each student must register exactly one Codeforces handle with the instructor
  • Only submissions from the registered handle will count toward course credit

Leaderboard

A public Codeforces-based scoreboard will track contest and Codeforces activity for this course. If you prefer anonymity, use a handle that does not reveal your identity. Only submissions from your registered handle will appear on the leaderboard and count for credit.

Grade Cutoffs

Final grades are based on total points earned:

  • A: ≥ 50 points
  • B: ≥ 30 points
  • C: ≥ 20 points
  • D: ≥ 10 points
  • F: < 10 points

Policy on the Use of GenAI

During Weekly Contests

NO Gen-AI tools are allowed during weekly in-class contests:

  • No code completion tools (including Copilot)
  • No ChatGPT or similar AI assistants
  • No AI-based translation tools

This policy matches ICPC competition rules and ensures fair evaluation. Violations will result in grade penalties and possible academic integrity violation reports.

Practice and Learning (Outside Contest Time)

Gen-AI tools may be used freely for:

  • Learning and understanding algorithms
  • Practicing problem-solving
  • Analyzing different solution approaches

Requirements:

  • Must document AI assistance in submissions
  • Required to understand all code you submit
  • Code similarity detection will be used to identify potential violations

Auditing

To ensure fairness and academic integrity, the instructor may conduct solution audits. An audit is a short, informal verification where a student is asked to explain one or more of their submitted solutions, including:

  • The core idea of the algorithm
  • Why it is correct
  • Its time and space complexity

Audits may be conducted at the instructor's discretion, including:

  • Random selection
  • Selection based on unusual submission patterns
  • Selection of students who primarily earn credit outside in-person contests

Students who regularly participate in weekly in-person contests are less likely to be audited. Failure to satisfactorily explain one's own submitted solution may be treated as evidence of academic misconduct.

By enrolling in this course, students agree to participate in such audits if requested.