Foundations of Computer Science (FOCS) Assignments

Academic Honesty

For all graded assignments in the course (including quizzes and exams), you may use the course text, the course lectures, and your completed course assignments as reference material. For homework, you may discuss problems with other students, but all submitted assignments must be your own thinking and writing, and written independently. The level of discussion you may engage in with other students regarding homework questions is exactly the level to which you would be willing to publicly share on Piazza, where the instructor can see your collaboration — if you wouldn't share something on Piazza publicly, then do not share privately.

Homework Instructions

  1. Start each problem on a new page. Do not submit code.
  2. Write clearly and concisely. Use proper grammar and write in complete sentences. Even if your solution is correct, if it is not well-written you will not receive full points. For examples of well-written solutions, see the solutions to the pop quizzes and exercises in DMC on the main page; examples are given for every chapter of DMC.
  3. Submit your solution as a pdf, electronically (see the main page). We WILL NOT accept email submissions.


For homeworks, quizzes, and exams:

Quizzes and Exams

Quiz 1 Solution
Midterm Solution
Quiz 2 Solution
Quiz 3 Solution
Final (Makeup Final) Solution (Makeup Final Solution)


Historical examples

See the Spring 2021 FOCS assignment page for examples of previous assignments, quizzes, and exams.