=========================================================================== CSC 373 Homework Exercise 3 -- Marking Scheme Fall 2008 =========================================================================== NOTE TO STUDENTS: You will find below the marking scheme used for your homework, including the meaning of marking codes and number of marks associated with each one. This file also contains my instructions to the marker (so you can get an idea of how the homework was marked) and the marker's comments about each question. Please take the time to read this carefully before you ask questions about the grading of your homework. NOTE TO MARKER: Be picky! On any homework, it is the responsibility of students to show that they understand how to solve each problem and to write up their answers carefully. At the same time, keep in mind that exercises are worth only 1.5% of the final grade, so your marking should be somewhat coarse. And remember that marking is not just about evaluating the students's performances, but also about giving them feedback so that they can learn from their mistakes. This is especially important for students who made numerous or more serious mistakes, as they are likely to need more feedback in order to understand why their answers were incorrect. For each question, I list solution elements with an associated code for writing on student papers (the letter(s) between underscores _) and a number of marks. There are also general errors (with associated codes) given below, with a maximum number of marks to take off for each type of general error (as a percentage of the value of the question). You will likely encounter other common errors, or maybe decide to break down the marking scheme further. Simply make note of these changes/additions to the marking scheme, and introduce new code letters (or short words) to allow you to quickly give accurate feedback to the students (both in terms of what they did wrong and how many marks it cost them). GENERAL ERRORS (marked negatively, in addition to any other errors): _N_otation [up to 20%]: incorrect/ambiguous notation _V_agueness [up to 20%]: incorrect/unjustified/vague claim 1. [15 marks] _S_tructure [3 marks]: clear attempt to define an array of values related to the problem, to give a recurrence relation for the array values, to justify the recurrence based on the recursive structure of an optimal solution, to give an algorithm to compute the array values bottom-up, and to generate an actual solution from those values _A_rray [2 mark]: clear and correct definition of the array _R_ecurrence [3 marks]: correct recurrence for the array, including appropriate base cases _J_ustification [2 marks]: good justification of correctness for the recurrence _B_ottom-up algorithm [2 marks]: correct bottom-up algorithm to compute array values -- give marks for correctly computing array values following the recurrence, even if recurrence is incorrect _C_onstructing solution [3 marks]: correct algorithm to find an actual solution -- working backwards and making correct choices based on values in the array -- give marks for correctly finding a solution assuming that array values have been computed correctly, even if they haven't been Marker's Comments: Fairly well done. Major problem: forgetting to check for out-of-bounds indices. Also, some students who tried to start at (n,n) and work backwards to (1,1) mixed up their indices and would add 1 instead of subtracting it.