\(2^k\) 人の格闘家からなる集合を列挙する. このときの集合を \(S_{k, 1}, S_{k, 2}, \dots\) とする.

\(S_{k, i}\) の格闘家がトーナメントのある山にいるときに \(j\) (\(j \in S_{k, i}\)) 番目の格闘家がそのトーナメントの山を勝ち抜く回数を \(C(S_{k, i}, j)\) とする.

\(S_{k, u}\) の格闘家と \(S_{k, v}\) (ただし, \(S_{k, u} \cap S_{k, v} = \varnothing\)) の格闘家がトーナメントの隣り合う山にいるとき, \(S_{k+1, i} = S_{k, u} \cup S_{k, v}\) となる \(i\) が存在し,

\[C(S_{k+1, i}, z) = \sum_{x \in S_{k, u}} \sum_{y \in S_{k, v}} C(S_{k, u}, x)C(S_{k, v}, y)\]

となる. ただし, \(z\) は \(x\) 番目の格闘家と \(y\) 番目の格闘家が戦ったときに勝つ方の格闘家である.

これを \(k=0,1,2\) について行う.

最後に \(S_{3, u}\) については \(S_{3, v}\) は全体から補集合を取ればただちに求まるので,

\[C(S, z) = \sum_{x \in S_{k, u}} \sum_{y \in S_{k, v}} C(S_{k, u}, x)C(S_{k, v}, y)\]

をそのまま計算すればいい.