Found a bug? Wrong question? Have an idea? Theo wants to know!
TheoRee
two friends · two mispronunciations · one app
Nice to meet you! 🐝
Theo wants to know your name before you begin. Your progress will be saved just for you.
🐝 Theo & Spider — The Story of TheoRee
TheoReeβ
🔥 0 day streak
🎓
Exam Tomorrow?
Pick your topics, set a time limit, get a custom mixed exam — no hints, full review at the end.
Coming Soon
💼
Job Interview Prep
Targeted CS fundamentals for FAANG and tech company interviews.
Coming Soon
Play NP-complete games — discover something surprising about CS without realizing you're learning. After 8 rounds, Theo reveals what you just did. 🐝
🎯
Subset Sum
Pick numbers that add to the target.
▶ Play Now
🫧
Independent Set
Select nodes so no two are connected.
▶ Play Now
🛡️
Vertex Cover
Pick nodes that touch every edge.
Coming Soon
📦
Set Cover
Choose fewest subsets to cover all.
Coming Soon
🔀
3-SAT
Satisfy every clause of 3 literals.
Coming Soon
⚡
Circuit-SAT
Make a Boolean circuit output true.
Coming Soon
🌈
No-Rainbow Coloring
No triangle with 3 different edge colors.
Coming Soon
🗺️
3-Coloring
Color a graph — no neighbors match.
Coming Soon
🎒
Knapsack
Pack items to maximize value.
Coming Soon
🔁
Hamiltonian Path
Visit every node exactly once.
Coming Soon
🏆
Olympiad Prep
IOI & informatics olympiad track. Hard problems, elegant solutions.
Coming Soon
⚡
ICPC Prep
Competitive programming theory — the CS behind the algorithms.
Coming Soon
Discrete Mathematics
Choose a topic room to enter
Topic Rooms
Combinatorics
Score 75%+ to unlock the next level
Levels
Challenges
Quick Lesson
📖
Before You Begin
A quick refresher — or skip if you're ready
🎓 Exam Tomorrow?
We'll build you a custom practice exam.
🐝
Coming Soon!
Theo is building this feature right now. You'll be able to pick your topics, set a time limit, and get a custom mixed exam — no hints, full review at the end.
For now, try the Comprehensive or Timed challenges inside each course!
🎮 Tired of Studying?
Play a game — discover something surprising.
🎯
Subset Sum
Pick numbers that add to the target. Sounds easy...
▶ Play Now
🫧
Independent Set
Select nodes so no two are connected. How many can you pick?
▶ Play Now
🛡️
Vertex Cover
Pick nodes that touch every edge. Use as few as possible.
Coming Soon
📦
Set Cover
Choose fewest subsets to cover every element.
Coming Soon
🔀
3-SAT
Assign true/false to satisfy every clause of 3 literals.
Coming Soon
⚡
Circuit-SAT
Find inputs that make a Boolean circuit output true.
Coming Soon
🌈
No-Rainbow Coloring
Color edges so no triangle uses three different colors.
Coming Soon
🗺️
3-Coloring
Color a graph with 3 colors so no two neighbors match.
Coming Soon
🎒
Knapsack
Pack items to maximize value within a weight limit.
Coming Soon
🔁
Hamiltonian Path
Visit every node exactly once. Find the path.
Coming Soon
🫧 Independent Set
Round 1 of 8
0 / 0
🫧
How to play
Pick a group of nodes (circles) so that no two you picked are connected by a line. Think of it like choosing people for a team where nobody knows each other!
🟢 Green = selected · 🔴 Red = conflict (neighbors selected) · Hit "Not Possible" if you think it can't be done
Pick exactly this many nodes
—
...with no two connected by a line
Selected: 0
🐝
Wait a moment...
Theo says:
"You just played Independent Set — one of the classic NP-Complete problems."
You found independent sets by intuition — looking at the graph, noticing clusters, avoiding edges. Write a program to do that for a graph of 1000 nodes? The best known algorithms are exponential in the worst case.
🕷️
Spider investigated...
"It is suspicious."
Independent Set is NP-Complete. Interestingly, it's the complement of Vertex Cover — if you found a maximum independent set, you automatically found a minimum vertex cover. Two problems in one. Very suspicious.
🎯 Subset Sum
Round 1 of 8
0 / 0
🎯
How to play
Tap the numbers below to select them. Your goal is to find a group that adds up exactly to the target. You don't have to use all the numbers — just the right ones!
💡 If no combination works, hit "Not Possible"
Find numbers that add up to
—
Current sum
0
🐝
Wait a moment...
Theo says:
"You just played Subset Sum — one of the most famous problems in all of computer science."
You solved it because humans are good at intuition. But write a program to do what you just did — for a list of 100 numbers? The best known algorithms take exponential time. No one has found a fast one. No one has proved one doesn't exist.
🕷️
Spider investigated...
"It is suspicious."
Subset Sum is NP-Complete. That means if you found a fast algorithm for it, you'd solve thousands of other problems at once — including ones that protect your bank account and private messages. Very suspicious indeed.
Want to learn more?
NP-Completeness is covered in Theory of Computation and Algorithm Design. These courses explain the P vs NP question — the biggest unsolved problem in computer science.
Level 1
🔥 0
30
QUESTION 1 OF 10Level 1
🎉
Correct!
8
out of 10
Well done!
⭐⭐⭐
✦ +100 XP
✨
🌸
✦ TheoRee Academy ✦
🎓
Certificate of Mastery
Congratulations!
You have successfully completed the comprehensive assessment and demonstrated mastery of all topics.