Combinatorics is mathematics of enumeration, existence, construction, and optimization questions concerning finite sets. The text emphasizes the brands of thinking that are characteristic of combinatorics: bijective and combinatorial proofs, recursive analysis, and counting problem classification.