ABC152F 解法 条件の否定を考えると,黒が 0箇所となるので,扱いやすい. よって包除原理が使いやすい. 共通部分を求める包除原理を用いる. この場合,\(s \in 2^{M}\) を動かすとき,\(s = \emptyset\) を含むことと, 符号 \*1 return true; eset[i] ^= 1LL << e.id; } return false; }; dfs(dfs, a, -1); } ll ans = 0; rep(s,1LL << m){ // include s = 0 ll sig = __builtin_parityll(s) ? -1 : 1; ll …