Problem Sets

Below are links to the problem sets.
1 Wednesday
Problem Set 1 allowedSubmit!
2 Wednesday
Problem Set 2 allowedSubmit!
3 Wednesday
Problem Set 3 no collaborationSubmit!
4 Wednesday
Problem Set 4 allowedSubmit!
5 Wednesday
Problem Set 5 allowedSubmit!
6 Wednesday
Problem Set 6 allowedSubmit!
7 Wednesday
Problem Set 7 allowedSubmit!
8 Tuesday
Problem Set 8 no collaborationSubmit!

Submission policy.  Submit your solutions electronically via the TigerFile submission system, using your Princeton NetID and password for authentication. You may resubmit files without penalty up until the submission deadline.

Your solutions should be carefully organized and neatly typeset in LaTeX using the COS 423 LaTeX template. If you're new to LaTeX, here is a brief LaTeX guide (and the corresponding source file). Please follow these guidelines:

Late submissions. Problem sets are due at 11pm on Wednesday evenings. If any part of a problem set is submitted late, the entire problem set will be marked late. Once the deadline has passed, we will grade any submitted work as-is. If you wish to submit a problem set late, do not submit any files until you are ready to turn in the entire problem set.

Penalties for late submissions. There is a 59-minute grace period. Late assignments are assessed a penalty equal to 10% of the possible points on the assignment per day or partial day late. The penalties for your first four late days are automatically waived. Additional late penalties will be waived only in the case of a medical or personal emergency, as documented in a note from a Dean or Director of Studies.

Grading policy.  Your code will be graded for correctness, efficiency, clarity, conciseness, and mathematical rigor. It is your responsibility to describe your algorithm clearly and prove that it achieves the specified performance requirements. Partial credit is available for a partially completed problem (or one that does not meet the performance requirements).

Writing up your solutions.  Learning how to write clear, concise, and rigorous solutions is an important component of this course. Vague and sloppy solutions often turn out to have inaccuracies that render them incorrect. You will lose a significant number of points if your solution is imprecise or lacks sufficient explanation, even if the main idea is correct. Here are a few guidelines:

Collaboration policy.   Designing and analyzing an algorithm is an individual creative process much like writing a composition or computer program. You must reach your own understanding of the problem and discover a path to its solution. Each problem set will be designated as either no collaboration or collaboration allowed.

Academic integrity.   The creative process leading to the discovery of a solution is as important as understanding and being able to present a solution. The following activities are explicitly prohibited in all graded coursework:

Penalties for academic violations.  We refer alleged academic violations (including plagiarism and abetting plagiarism) to the Committee on Discipline. If found responsible, the typical penalty is an F as a course grade plus whatever penalty that the CoD imposes. (The typical CoD penalty for plagiarism is suspension from the University for one year.) Violators of course policies that are not adjudicated by the CoD will receive penalties based on the severity of the violation, ranging from a warning (for violations that are both unintentional and innocuous) to an F in the course (for violations that are both intentional and serious).