Day 100: What Actually Stuck vs What I Forgot
Day 3. Time for some actual data.
After 100 days of my "one problem per day, done deeply" approach, I tested myself. No hints. No looking things up. Pure recall.
The Test
I went through all 100 problems I had solved over the past 100 days.
For each problem, I scored myself:
The Results
Total score: 168 out of 200 (84%)
Breaking it down by topic:
| Topic | Score | % |
|-------|-------|---|
| Arrays & Strings | 36/40 | 90% |
| Two Pointers | 18/20 | 90% |
| Sliding Window | 16/20 | 80% |
| Linked Lists | 14/18 | 78% |
| Trees | 26/32 | 81% |
| Graphs | 20/28 | 71% |
| Dynamic Programming | 24/30 | 80% |
| Other (Heaps, Tries, etc) | 14/20 | 70% |
What I Noticed
**Patterns I understood deeply stuck the most.** Two pointers, arrays, sliding window - these I could apply to new variations easily.
**Patterns I had memorized faded.** Some DP problems I could only solve because I remembered the exact recurrence. When I tried variations, I struggled.
**Graphs were my weakness.** BFS vs DFS decisions, detecting cycles, shortest paths - I needed more practice here.
Compare to My Old Method
Remember when I tested myself on 50 problems after grinding 500 LeetCode problems?
That's a 5x improvement in retention with 80% fewer problems.
The Key Differences
1. **Struggling first** creates memory hooks
2. **Spaced repetition** reinforces at optimal intervals
3. **Pattern focus** transfers to new problems
4. **Teaching/explaining** forces deep understanding
What This Means for DSA 100 Days
I'm building all of this into the product:
The goal isn't to expose you to problems. It's to make you actually LEARN them.
Tomorrow: The pattern that was my breakthrough moment - Two Pointers.
— Marcus
— Marcus