mask1为啥要倒着循环?
来源:13-15 利用位运算表示状态
Charles_Zhang
2021-03-31
老师您好,这个mask1倒着循环没有太听明白。
您上面说的需要用旧值推新值。mask1是大状态(值更大),mask2是小状态,如果倒着推的话,不是应该通过大状态的值推出小状态吗?怎么是通过小状态推出大状态?
写回答
1回答
-
javaman
2021-04-01
您好,是说Leetcode1434那个选帽子的题么?
我这里mask2是大状态, mask1是小状态。用小状态推大状态,倒着循环mask2,保证更小的状态是之前计算过的。
“这里mask2和mask1的二进制表示里,mask2比mask1多一个1,表示这个帽子被该人选择。“
10
相似问题