Skip to content

Instantly share code, notes, and snippets.

@Thiago4532
Last active August 7, 2019 15:50
Show Gist options
  • Select an option

  • Save Thiago4532/fab751d210297430e9e6789f948a0f7d to your computer and use it in GitHub Desktop.

Select an option

Save Thiago4532/fab751d210297430e9e6789f948a0f7d to your computer and use it in GitHub Desktop.
for(int mask = 0; mask < (1<<N); ++mask){
dp[mask][-1] = A[mask]; // Tratar o caso com o bit -1 separadamente, para simplificar nao iremos tratar o caso separado.
for(int i = 0;i < N; ++i){
if(mask & (1<<i))
dp[mask][i] = dp[mask][i-1] + dp[mask^(1<<i)][i-1];
else
dp[mask][i] = dp[mask][i-1];
}
F[mask] = dp[mask][N-1];
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment