Kyopro Library
 
読み取り中…
検索中…
一致する文字列を見つけられません
Bit 名前空間

ビット演算 [詳解]

関数

int PopCount (int n)
 1であるビットの個数を返す
 
int PopCount (ll n)
 1であるビットの個数を返す
 
int Parity (int n)
 popcountの偶奇を返す
 
int Parity (ll n)
 popcountの偶奇を返す
 
int TopBit (int n)
 最上位ビットの位置を返す
 
int TopBit (ll n)
 最上位ビットの位置を返す
 
int BitLength (int n)
 2進表現の長さを返す
 
int BitLength (ll n)
 
int LowBit (int n)
 最下位ビットの位置を返す
 
int LowBit (ll n)
 最下位ビットの位置を返す
 
bool IsPowerOfTwo (int n)
 2のべき乗か否かを返す
 
ll Mask (int n)
 0~n-1 ビットを立てたビットマスクを返す
 
bool HasBit (ll n, int i)
 iビット目が立っているか否かを返す
 
string ToBinary (ll n, int len=32, bool rev=false)
 整数 n の2進表現を返す
 

詳解

ビット演算

関数詳解

◆ PopCount() [1/2]

int Bit::PopCount ( int n)

1であるビットの個数を返す

bit.hpp6 行目に定義があります。

◆ PopCount() [2/2]

int Bit::PopCount ( ll n)

1であるビットの個数を返す

bit.hpp9 行目に定義があります。

◆ Parity() [1/2]

int Bit::Parity ( int n)

popcountの偶奇を返す

bit.hpp12 行目に定義があります。

◆ Parity() [2/2]

int Bit::Parity ( ll n)

popcountの偶奇を返す

bit.hpp15 行目に定義があります。

◆ TopBit() [1/2]

int Bit::TopBit ( int n)

最上位ビットの位置を返す

bit.hpp18 行目に定義があります。

◆ TopBit() [2/2]

int Bit::TopBit ( ll n)

最上位ビットの位置を返す

bit.hpp21 行目に定義があります。

◆ BitLength() [1/2]

int Bit::BitLength ( int n)

2進表現の長さを返す

bit.hpp24 行目に定義があります。

◆ BitLength() [2/2]

int Bit::BitLength ( ll n)

bit.hpp27 行目に定義があります。

◆ LowBit() [1/2]

int Bit::LowBit ( int n)

最下位ビットの位置を返す

bit.hpp30 行目に定義があります。

◆ LowBit() [2/2]

int Bit::LowBit ( ll n)

最下位ビットの位置を返す

bit.hpp33 行目に定義があります。

◆ IsPowerOfTwo()

bool Bit::IsPowerOfTwo ( int n)

2のべき乗か否かを返す

bit.hpp36 行目に定義があります。

◆ Mask()

ll Bit::Mask ( int n)

0~n-1 ビットを立てたビットマスクを返す

bit.hpp39 行目に定義があります。

◆ HasBit()

bool Bit::HasBit ( ll n,
int i )

iビット目が立っているか否かを返す

bit.hpp42 行目に定義があります。

◆ ToBinary()

string Bit::ToBinary ( ll n,
int len = 32,
bool rev = false )

整数 n の2進表現を返す

引数
lenビット数
rev反転するか否か

bit.hpp47 行目に定義があります。

参照先 HasBit().