2.2 位元枚舉和遞迴枚舉
位元枚舉介紹
位元枚舉是一種通過遍歷所有的二進制數字來列舉所有可能的狀態的方法。通過對二進制數字中的每一位進行遍歷,可生成所有可能的狀態。
位元枚舉的優勢:
- 用二進位的方式來簡單維護枚舉的技巧,程式碼量小
- 通常使用在枚舉部分只有要或不要(1/0)兩種可能,符合二進位原理
- 例如:
10011代表在第1、2、5項要選擇3、4則不選擇
如何使用位元枚舉
https://codeforces.com/problemset/problem/1097/B?locale=en https://cses.fi/problemset/task/1623