#include <bitset> // Вы не поверите

using namespace std;

int main()
{
  bitset<1024> b; // 1024 ячейки, занимают они 128 байт
  b[0] = 1;
  b[1] = 1 - b[0]; // общаться можно также, как и с массивом

  b.reset(); // обнулить все, работает за O(n)
  int k = b.count(); // число единичных бит, работает за O(n)
  
  b.set(2); // b[2] = 1;
  b.reset(2); // b[2] = 0;
  b.flip(2); // b[2] = 1 - b[2]

  return 0;
}