General matters

1.1. Aims. The purpose of the assignment is to:
 let you design solutions to simple problems;
 let you implement these solutions in the form of short Python programs;
 practice the use of arithmetic computations, tests, repetitions, lists, tuples, dictionaries, deques, reading
from les.
1.2. Submission. Your programs will be stored in a number of les, with one le per exercise, of the appropriate
name. After you have developed and tested your programs, upload your les using Ed. Assignments can be
submitted more than once: the last version is marked. Your assignment is due by April 15, 11:59pm.
1.3. Assessment. Each of the 4 exercises is worth 2.5 marks. For all exercises, the automarking script will let
each of your programs run for 30 seconds. Still you should not take advantage of this and strive for a solution
that gives an immediate output for \reasonable” inputs.
Late assignments will be penalised: the mark for a late submission will be the minimum of the awarded mark
and 10 minus the number of full and partial days that have elapsed from the due date.
The outputs of your programs should be exactly as indicated.
1.4. Reminder on plagiarism policy. You are permitted, indeed encouraged, to discuss ways to solve the
assignment with other people. Such discussions must be in terms of algorithms, not code. But you must
implement the solution on your own. Submissions are routinely scanned for similarities that occur when
students copy and modify other people’s work, or work very closely together on a single implementation. Severe
penalties apply.