问两种写法的区别?
查看原帖
问两种写法的区别?
507642
zsfzhjf楼主2024/9/11 22:13

我在最后统计dp答案时一开始写的是

for(int k=j;k;k-=(k&(-k)) dp[i+1][j]=std::max(dp[i+1][j],dp[i][j^k]+f[i][k]);

之后换成看起来一样都是去掉二进制下最后一个一的操作

for(int k=j;k;k=k-1&j)) dp[i+1][j]=std::max(dp[i+1][j],dp[i][j^k]+f[i][k]);

结果上面的 WAWA 了,下面的却 ACAC

问这两种写法有啥差别吗?

2024/9/11 22:13
加载中...