feat: populate note files with problem descriptions and code stubs

Add populate-notes.mjs that fetches problem descriptions and
Python/C++ code stubs from LeetCode's GraphQL API. Populated
all 197 NeetCode 150 note files with:
- Problem description (examples, constraints)
- Python code stub (function signature)
- C++ code stub (function signature + includes)

API responses cached in leetcode/.cache/leetcode/ for instant re-runs.
This commit is contained in:
2026-06-01 17:22:07 +08:00
parent e798e449bd
commit 1dec88aaf2
198 changed files with 10459 additions and 534 deletions
@@ -1,18 +1,56 @@
#+PROPERTY: STUDY_DECK_02
* TODO 0062. Unique Paths :medium:
:PROPERTIES:
:NEETCODE: [[file:../../roadmap.org::*0062. Unique Paths][Roadmap]]
:NEETCODE: [[file:../../roadmap.org::*0062. Unique Paths][0062. Unique Paths]]
:END:
There is a robot on an ~m x n~ grid. The robot is initially located at the *top-left corner* (i.e., ~grid[0][0]~). The robot tries to move to the *bottom-right corner* (i.e., ~grid[m - 1][n - 1]~). The robot can only move either down or right at any point in time.
Given the two integers ~m~ and ~n~, return /the number of possible unique paths that the robot can take to reach the bottom-right corner/.
The test cases are generated so that the answer will be less than or equal to ~2 * 10^{9}~.
*Example 1:*
#+begin_src
Input: m = 3, n = 7
Output: 28
#+end_src
*Example 2:*
#+begin_src
Input: m = 3, n = 2
Output: 3
Explanation: From the top-left corner, there are a total of 3 ways to reach the bottom-right corner:
1. Right -> Down -> Down
2. Down -> Down -> Right
3. Down -> Right -> Down
#+end_src
*Constraints:*
- ~1 <= m, n <= 100~
** TODO Approach
Write your approach here.
** TODO Python
#+begin_src python
class Solution:
def uniquePaths(self, m: int, n: int) -> int:
#+end_src
** TODO C++
#+begin_src cpp
class Solution {
public:
int uniquePaths(int m, int n) {
}
};
#+end_src