---
# System prepended metadata

title: CS410 Homework Template

---

# CS410 Homework #: Name

**Due Date: 11/2/2024**

**Need help?** Remember to check out [Edstem](https://edstem.org/us/courses/61309) and our website for TA assistance.


## Assignment Overview


### Learning Objectives

What you will know:
* what ...

What you will be able to do:
* develop...
* interpret...


## Data Structures & Algorithms


## Tasks

:::info
**Task 1**
:::

:::success 
**Signature**
:::

:::info
**Task 2**
:::

:::success 
**Signature**
:::


## Downloads

Please click [here](https://github.com) to download the assignment code. 


### Support Code

> <font style="color: red">these are the files that the students will not modify. list them in a bullet list, along with a brief description, adding extra subsections for any such files that warrant detailed explanations.</font>


### Stencil Code

> these are the files that the students **will** modify. list them in a bullet list, along with a brief description, adding extra subsections for any such files that warrant detailed explanations.</font>

:::warning
**Reminder:** Your solution should modify the stencil code *only*. You will be penalized for modifying the support code, especially if it interferes with the autograder.
:::


### Testing Code

- `unit_tests.py` A file in which to write unit tests for your code. As an example, we have provided a simple test, which checks only that ...

Add more tests to further verify the correctness of your code. Does it succeed at finding solutions when they exist? And does it terminate gracefully when they do not? Does it find optimal solutions when it should? Etc.

:::info 
**Task**
Describe your tests in words in your README.
::: 

:::spoiler **Hint: Data Structures** 
:::

:::warning
**Reminder: Test early and often!** And don't forget to write your tests *before* you write any code. Never, and we mean *never*, write tests based on the output of your program.
:::

:::danger
**⚠️WARNING⚠️** Your solution should modify the stencil and testing code *only*. You will be penalized for modifying the support code, especially if it interferes with the autograder.
:::


## Submission

### Handin

Your handin should contain the following:
- all modified files, including comments describing the logic of your implementations and tests
- a README containing:
    - a summary of your tests, explaining their outcomes
    - your solutions to any conceptual questions 
    - known problems in your code
    - anyone you worked with
    - any outside resources used (eg. Stack Overflow, ChatGPT)

### Gradescope

Submit your assignment via Gradescope.

To submit through GitHub, follow these commands:
1. `git add -A`
2. `git commit -m "commit message"`
3. `git push`

Now, you are ready to upload your repo to Gradescope.

*Tip*: If you are having difficulties submitting through GitHub, you may submit by zipping up your hw folder.

### Rubric

> <span style="color: red">will we include a rubric for all assignments with the handout?</span>


:::success
Congrats on submitting your homework; Steve is proud of you!!

![image](https://hackmd.io/_uploads/S1OQ2aCwA.png)
:::