Operações com bit e máscaras de bit

Página Inicial / ∣V∣+∣E∣ (Gráfico) / Operações com bit e máscaras de bit
Adaptado de 2013, Competitive Programming 3. Steven Halim, Felix Halim. Slides de Programação Dinâmica que falam sobre máscaras de bit

Iterar sobre todas as máscaras possíveis de tamanho n:

for (int mask = 0; mask < (1 << n); mask++)

Iterar sobre todas as submáscaras:

for (int ss = mask; ss > 0; ss = (ss - 1) & mask)
Fonte: Código de DP em árvore para resolver problema de Steiner Trees