2458 Rigging the Bovine Election

概要

5x5のフィールドが与えられて,7つの連続するマスを選ぶ.
マスにはHかJが書いてあって,7こ選んだとき,Jの方が多くなる選び方は何とおりあるか.

解法

まず,ダメだった解法は,25C7 = 480700 なので,全部生成して,それが条件を満たしているか,UnionFindとかを使って連結になっているかをチェックする,と言う方法で考えたが,TLE.
25C7 * 25 = 12017500 だからちょっと無理なのかな…と言うことで,素敵な先輩に聞いたところ,
setに25こから1つだけ選ぶ方法(bit)を全部列挙する,
それらの中で,連結している要素を1つ増やしたものを列挙する…と繰り返して行くことで,
7つ連結している組み合わせを全部作り出せる.
聞いたときは遅そうと思ったのだけど,7つ連結してる要素は4000ないくらいなのでsetの遅さも気にならないくらいでした.
計算量はどうなんだろう?