bit全探索
#C++ #競プロ
N 個のものそれぞれについて選ぶか選ばないかを決める 2^N通りを全探索するという状況ではbit全探索と呼ばれる手法がその実装の容易さから広く用いられる
流れとしては、配列について、for文ループで
for(int bit=0;bit<(1<<N);bit++){}という風に2進数の組み合わせについて検証していく
1<<Nの部分はビットシフトと呼ばれる考え方で、1<<3であれば0001が1000になるという具合だ
https://scrapbox.io/files/666d9cb8e2b839001cd06ddf.png
売り場の数だけビットシフトによるループを行い、もし、売り場iのj番目が○ならばboolのexistをtrueに書き換えるという形をとっている。
#ABC358-C を見よ