从$O(3^n)$优化到$O(n2^n)$

int mx = (1<<n)-1;
//3^n
REP(i,0,mx) if (dp[i]) {
    int j = ~i&mx;
    for (int k=j; k; k=(k-1)&j) dp[i|k] = 1;
}
//n2^n
REP(i,0,mx) if (dp[i]) {
    REP(j,0,n-1) dp[i|1<<j]=1;
}

 

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。
扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄