[Combinatorics]
Problem: In each town in ARMLandia, the residents have formed groups, which meet each week to share math problems and enjoy each others' company over a potluck-style dinner. Each town resident belongs to exactly one group. Every week, each resident is required to make one dish and to bring it to his/her group.

It so happens that each resident knows how to make precisely two dishes. Moreover, no two residents of a town know how to make the same pair of dishes. Shown below are two example towns. In the left column are the names of the town's residents. Adjacent to each name is the list of dishes that the corresponding resident knows how to make.

| ARMLton |  |
| :--- | :--- |
| Resident | Dishes |
| Paul | pie, turkey |
| Arnold | pie, salad |
| Kelly | salad, broth |


| ARMLville |  |
| :--- | :--- |
| Resident | Dishes |
| Sally | steak, calzones |
| Ross | calzones, pancakes |
| David | steak, pancakes |

The population of a town $T$, denoted $\operatorname{pop}(T)$, is the number of residents of $T$. Formally, the town itself is simply the set of its residents, denoted by $\left\{r_{1}, \ldots, r_{\mathrm{pop}(T)}\right\}$ unless otherwise specified. The set of dishes that the residents of $T$ collectively know how to make is denoted $\operatorname{dish}(T)$. For example, in the town of ARMLton described above, pop(ARMLton) $=3$, and dish(ARMLton) $=$ \{pie, turkey, salad, broth\}.

A town $T$ is called full if for every pair of dishes in $\operatorname{dish}(T)$, there is exactly one resident in $T$ who knows how to make those two dishes. In the examples above, ARMLville is a full town, but ARMLton is not, because (for example) nobody in ARMLton knows how to make both turkey and salad.

Denote by $\mathcal{F}_{d}$ a full town in which collectively the residents know how to make $d$ dishes. That is, $\left|\operatorname{dish}\left(\mathcal{F}_{d}\right)\right|=d$.

In order to avoid the embarrassing situation where two people bring the same dish to a group dinner, if two people know how to make a common dish, they are forbidden from participating in the same group meeting. Formally, a group assignment on $T$ is a function $f: T \rightarrow\{1,2, \ldots, k\}$, satisfying the condition that if $f\left(r_{i}\right)=f\left(r_{j}\right)$ for $i \neq j$, then $r_{i}$ and $r_{j}$ do not know any of the same recipes. The group number of a town $T$, denoted $\operatorname{gr}(T)$, is the least positive integer $k$ for which there exists a group assignment on $T$.

For example, consider once again the town of ARMLton. A valid group assignment would be $f($ Paul $)=f($ Kelly $)=1$ and $f($ Arnold $)=2$. The function which gives the value 1 to each resident of ARMLton is not a group assignment, because Paul and Arnold must be assigned to different groups.


For a dish $D$, a resident is called a $D$-chef if he or she knows how to make the dish $D$. Define $\operatorname{chef}_{T}(D)$ to be the set of residents in $T$ who are $D$-chefs. For example, in ARMLville, David is a steak-chef and a pancakes-chef. Further, $\operatorname{chef}_{\text {ARMLville }}($ steak $)=\{$ Sally, David $\}$.


If $\operatorname{gr}(T)=\left|\operatorname{chef}_{T}(D)\right|$ for some $D \in \operatorname{dish}(T)$, then $T$ is called homogeneous. If $\operatorname{gr}(T)>\left|\operatorname{chef}_{T}(D)\right|$ for each dish $D \in \operatorname{dish}(T)$, then $T$ is called heterogeneous. For example, ARMLton is homogeneous, because $\operatorname{gr}($ ARMLton $)=2$ and exactly two chefs make pie, but ARMLville is heterogeneous, because even though each dish is only cooked by two chefs, $\operatorname{gr}($ ARMLville $)=3$.


A resident cycle is a sequence of distinct residents $r_{1}, \ldots, r_{n}$ such that for each $1 \leq i \leq n-1$, the residents $r_{i}$ and $r_{i+1}$ know how to make a common dish, residents $r_{n}$ and $r_{1}$ know how to make a common dish, and no other pair of residents $r_{i}$ and $r_{j}, 1 \leq i, j \leq n$ know how to make a common dish. Two resident cycles are indistinguishable if they contain the same residents (in any order), and distinguishable otherwise. For example, if $r_{1}, r_{2}, r_{3}, r_{4}$ is a resident cycle, then $r_{2}, r_{1}, r_{4}, r_{3}$ and $r_{3}, r_{2}, r_{1}, r_{4}$ are indistinguishable resident cycles.
In terms of $k$ and $d$, find the number of distinguishable resident cycles of length $k$ in $\mathcal{F}_{d}$.

Solution: First, we compute the number of distinguishable resident cycles of length 6 in $\mathcal{F}_{8}$.

Because the town is full, each pair of dishes is cooked by exactly one resident, so it is simplest to identify residents by the pairs of dishes they cook. Suppose the first resident cooks $\left(d_{1}, d_{2}\right)$, the second resident $\left(d_{2}, d_{3}\right)$, the third resident $\left(d_{3}, d_{4}\right)$, and so on, until the sixth resident, who cooks $\left(d_{6}, d_{1}\right)$. Then there are 8 choices for $d_{1}$ and 7 choices for $d_{2}$. There are only 6 choices for $d_{3}$, because $d_{3} \neq d_{1}$ (otherwise two residents would cook the same pair of dishes). For $k>3$, the requirement that no two intermediate residents cook the same dishes implies that $d_{k+1}$ cannot equal any of $d_{1}, \ldots, d_{k-1}$, and of course $d_{k}$ and $d_{k+1}$ must be distinct dishes. Hence there are $8 \cdot 7 \cdot 6 \cdot 5 \cdot 4 \cdot 3=20,160$ six-person resident cycles, not accounting for different starting points in the cycle and the two different directions to go around the cycle. Taking these into account, there are $20,160 /(6 \cdot 2)=1,680$ distinguishable resident cycles.

Using the logic above, there are $d(d-1) \cdots(d-k+1)$ choices for $d_{1}, d_{2}, \ldots, d_{k}$. To account for indistinguishable cycles, divide by $k$ possible starting points and 2 possible directions, yielding $\frac{d(d-1) \cdots(d-k+1)}{2 k}$ or $\frac{d !}{2 k(d-k) !}$ distinguishable resident cycles.

Final answer: $\frac{d !}{2 k(d-k) !}$