Combinatorics¶
Bridge Deep
Combinatorics is the counting layer of the repo. It is where "how many?" stops being ad hoc and becomes structured.
Use This Area When¶
- the real question is counting valid arrangements rather than finding one witness
- choices are constrained by runs, bounds, or symmetry
- direct brute force is blocked, but the structure of the objects is regular
Start With One Route¶
| If your bottleneck is... | Open first | Then |
|---|---|---|
| basic counting patterns | Counting Basics | Bounded Compositions |
| overcounting and cancellation | Inclusion-Exclusion | one subset-style counting anchor |
| symmetry and orbit counting | Burnside / Pólya / Group Actions | compare against plain counting first |
| ranking and constructive counting | Lexicographic Enumeration | one ranking/unranking flavored note |
Core Progression¶
Core first- Counting Basics
-
Bounded Compositions
-
Then add - Inclusion-Exclusion
-
Lexicographic Enumeration
-
Later - Burnside / Pólya / Group Actions
- generating functions and deeper transform-heavy counting outside the current core
Good First Repo Anchors¶
Browse All Subtopics¶
- Counting Basics
- Burnside / Pólya / Group Actions
- Inclusion-Exclusion
- Bounded Compositions
- Lexicographic Enumeration
Go Deeper¶
- Reference: CP-Algorithms
- Reference: OI Wiki
- Practice: CSES Problem Set