{
  "schema": "ml-prep/item@1",
  "item": {
    "id": "mit-6-100l-finger-16",
    "area": "programming",
    "topic": "recursion",
    "origin": "external",
    "title": "Recursive flattening finger exercise",
    "skills": [
      "base-case",
      "recursive-implementation",
      "lists-tuples"
    ],
    "priority": "core",
    "difficulty": "medium",
    "estimated_minutes": 10,
    "prerequisites": [
      "recursion",
      "lists"
    ],
    "source_id": "mit-6-100l-f2022",
    "locator": {
      "document": "Finger Exercises",
      "label": "Lecture 16"
    },
    "links": {
      "problem": "https://ocw.mit.edu/courses/6-100l-introduction-to-cs-and-programming-using-python-fall-2022/pages/finger-exercises/#finger-exercise-lecture-16",
      "solution": "https://ocw.mit.edu/courses/6-100l-introduction-to-cs-and-programming-using-python-fall-2022/resources/mit6_100l_f22_ex16_sol_pdf/"
    },
    "selection_note": "Adds recursive structural decomposition beyond a scalar recurrence.",
    "answer_status": "official-solution"
  }
}