Программистское
Как перебирать все подмножества битового множества:
next_subset = ~((~subset & superset) - 1) & superset; - в "правильном" порядке.
Если порядок не важен, то просто next_subset = (subset - 1) & superset;
Да, я тормоз.
next_subset = ~((~subset & superset) - 1) & superset; - в "правильном" порядке.
Если порядок не важен, то просто next_subset = (subset - 1) & superset;
Да, я тормоз.