ACM-knowledge <bitset>

发布时间 2023-07-28 20:03:46作者: O2iginal

关于bitset,详见参考

#include <iostream>
#include <bitset>
using namespace std;
using LL = long long;

int main()
{
    bitset<10> b1;
    cin >> b1;                      // 1101;        可直接读入01串;
    cout << b1[0] << endl;          // 1;          01串的最右侧存放在 b[0]
    cout << b1 << endl;             // 0000001101; 可直接输入;
    cout << b1.to_ullong() << endl; // 13;         可直接转为整数,b[0]为低位,即01串右侧
    cout << b1.to_ulong() << endl;  // 13           注意转10进制整数时,不要超过32/64位

    bitset<10> b2(13);              // 可通过十进制整数构造,实现十进制转2进制
    cout << b2 << endl; // 0000001101

    bitset<10> b3("001101");        // 可通过string 01串构造
    cout << b3 << endl; // 0000001101
    return 0;
}