COMP 2012H Honors Object-Oriented Programming and Data Structures

Assignment 1 Grade checking and appeal

Introduction

  1. Check the assignment 1 grade and remarks HERE.
  2. The result code of the test cases are:
    • AC: Correct
    • WA: Wrong Answer
    • RE: Runtime Error
    • TLE: Time Limit (10s) Exceeded (which means your program may have infinite loop)
    • CE: Compilation Error
  3. If you want to appeal your grade, you MUST first read everything on this page, follow all the procedures, and try the test cases yourself. Your appeal will not be processed if you don't follow this rule.
  4. Uninitialized variables will have garbage (random) values in C++. Sometimes it will be 0, sometimes it will not. In that case, your program may generate different results on different machines or different runs if your logic depend on an uninitialized value. If you assumed them to be 0 or something specific (e.g. a very large value), your code is faulty and will get random results.
  5. If your function doesn't have a return statement for some cases, the returned value is undefined / can be random for those cases.
  6. Retrieving values from deleted/unallocated dynamic memory block may not always crash your program but may give random values.
  7. Runtime errors and crashes due to incorrect memory access / memory allocation / memory deallocation / missing variable initialization / missing return values / out-of-bound array access / etc. may not occur all the time on all machines. However, even you may not encounter the error/crash when you test your program, if your program crashes during any of our testing on some machine, the corresponding test cases will be considered as failed and will receive 0 marks as your code is indeed faulty.
  8. If there are minor compilation errors, TA will fix your program and do the grading. But you will get 2 marks deducted. A common compilation errors is defining helper function outside Todo.cpp. If the fix is not trivial, you will receive 0 marks for this assignment.
  9. You will NOT have marks deducted if you have additional output. But remember to delete all the debugging outputs or TA needs to do it manually.
  10. If you are certain that there is a grading mistake after reading this whole page and checking with the test cases, email us with the following information. Appeals with incomplete information will not be processed.
  11. Do not attach any .exe/executable file in the email. The code snippet and results snapshot are fine.
  12. Appeal deadline is October 22, 23:59. No late appeals will be processed.
  13. Finalized scores will be uploaded to canvas after all appeals are processed.

Marking scheme

There are total 16 test cases full 16 points. The grading schemes are shown below in detail:

  1. check_liberties_0
  2. check_liberties_1
  3. check_liberties_2
  4. check_liberties_3
  5. check_liberties_4
  6. find_captured_0
  7. find_captured_1
  8. find_captured_2
  9. edit_0
  10. edit_1
  11. edit_2
  12. edit_3
  13. edit_4
  14. jump_to_0
  15. jump_to_1
  16. jump_to_2

Files used for testing.

Trying the test cases

Download test cases and extract the files. You will get two folders: test_cases and sol. Gather the files in test_cases/[name_of_test_case], sol and your Todo.cpp. You need to modify the directory of resource file in main.cpp. Then you can compile all the files. The program output 1 for correct answer and 0 for wrong answer. You can output more messages to inspect the details of all the variables.

Download the solution here

Stats (for submitted works only)

Total = 16.00; Mean = 13.33; SD = 3.54
Normalized to 100.0; Mean = 83.31; SD = 22.13

Page maintained by
Homepage