整数型またはbool型のサイズNの配列A, B, Cを用意し、各配列について、人物の識別番号とインデックスを対応させます。例えば、A[i]がtrueの場合は、人物iがAに属することになります。

初期値としてA, B, Cの要素を全てfalseとし、入力で与えられた人物について、対応するA, B, Cの要素をtrueにしていきます。

繰り返し処理で全ての人物iについて (!A[i] && C[i]) || (B[i] && C[i]) を満たす場合、総数に加算します。