> ## Documentation Index
> Fetch the complete documentation index at: https://leetcode-py.wisl.dev/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> leetcode-py is a Python LeetCode practice environment generator with one CLI: lcpy. It is not a service or platform.
> Each problem is a directory under leetcode/ with README.md, solution.py, test_solution.py, helpers.py, and playground.ipynb. lcpy gen creates them from JSON templates bundled with the package.
> Examples are backed by tests; copy them verbatim.

# Interactive in Python with Tests

> All 14 Interactive LeetCode problems with tested Python solutions.

Interactive holds 14 problems (3 Easy, 6 Medium, 5 Hard).
Generate any of them into the current directory with `lcpy gen -n <number>`.

<div className="sd-catalog-table">
  | # | Problem | Difficulty | Solution |
  | - | - | - | - |
  | 157 | [Read N Characters Given Read4](/problems/read-n-characters-given-read4) | Easy | [solution.py](https://github.com/wislertt/leetcode-py/blob/main/leetcode/read_n_characters_given_read4/solution.py) |
  | 158 | [Read N Characters Given read4 II - Call Multiple Times](/problems/read-n-characters-given-read4-ii) | Hard | [solution.py](https://github.com/wislertt/leetcode-py/blob/main/leetcode/read_n_characters_given_read4_ii/solution.py) |
  | 277 | [Find the Celebrity](/problems/find-the-celebrity) | Medium | [solution.py](https://github.com/wislertt/leetcode-py/blob/main/leetcode/find_the_celebrity/solution.py) |
  | 278 | [First Bad Version](/problems/first-bad-version) | Easy | [solution.py](https://github.com/wislertt/leetcode-py/blob/main/leetcode/first_bad_version/solution.py) |
  | 374 | [Guess Number Higher or Lower](/problems/guess-number-higher-or-lower) | Easy | [solution.py](https://github.com/wislertt/leetcode-py/blob/main/leetcode/guess_number_higher_or_lower/solution.py) |
  | 489 | [Robot Room Cleaner](/problems/robot-room-cleaner) | Hard | [solution.py](https://github.com/wislertt/leetcode-py/blob/main/leetcode/robot_room_cleaner/solution.py) |
  | 702 | [Search in a Sorted Array of Unknown Size](/problems/search-in-a-sorted-array-of-unknown-size) | Medium | [solution.py](https://github.com/wislertt/leetcode-py/blob/main/leetcode/search_in_a_sorted_array_of_unknown_size/solution.py) |
  | 843 | [Guess the Word](/problems/guess-the-word) | Hard | [solution.py](https://github.com/wislertt/leetcode-py/blob/main/leetcode/guess_the_word/solution.py) |
  | 1095 | [Find in Mountain Array](/problems/find-in-mountain-array) | Hard | [solution.py](https://github.com/wislertt/leetcode-py/blob/main/leetcode/find_in_mountain_array/solution.py) |
  | 1236 | [Web Crawler](/problems/web-crawler) | Medium | [solution.py](https://github.com/wislertt/leetcode-py/blob/main/leetcode/web_crawler/solution.py) |
  | 1274 | [Number of Ships in a Rectangle](/problems/number-of-ships-in-a-rectangle) | Hard | [solution.py](https://github.com/wislertt/leetcode-py/blob/main/leetcode/number_of_ships_in_a_rectangle/solution.py) |
  | 1428 | [Leftmost Column with at Least a One](/problems/leftmost-column-with-one) | Medium | [solution.py](https://github.com/wislertt/leetcode-py/blob/main/leetcode/leftmost_column_with_one/solution.py) |
  | 1533 | [Find the Index of the Large Integer](/problems/find-the-index-of-the-large-integer) | Medium | [solution.py](https://github.com/wislertt/leetcode-py/blob/main/leetcode/find_the_index_of_the_large_integer/solution.py) |
  | 1538 | [Guess the Majority in a Hidden Array](/problems/guess-the-majority-in-a-hidden-array) | Medium | [solution.py](https://github.com/wislertt/leetcode-py/blob/main/leetcode/guess_the_majority_in_a_hidden_array/solution.py) |
</div>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.