SRM389 Div2 1000

問題

注目するギターの開放弦の音と鳴らしたいコードが与えられる。
注目しているすべての弦を鳴らして、鳴らしたいコードを鳴らすためにはフレットを指で押さえなければならない。「コードの押しにくさ」を押さえる最大フレット番号-最小フレット番号+1と定めたとき、最小のコードの押しにくさを返す。

考え方

数が少ないので全探索。
鳴らしたいコードが開放弦の音だけでならせるならば0。
コードの押しにくさrを1〜12までループを回し、その中で、押さえ始めフレットiを決めるとi〜r-1までのフレットと開放弦で鳴らしたいコードが鳴らせるかをチェックする。
(各弦についてi〜r-1にある音の組み合わせでコードが可能かどうかはdfsでチェックした)
鳴らせるならばその場でrを返す。