Bit Flag
それぞれがONまたはOFFであるn個のフラグで決定される「状態」は、0,1,…,n−1 番目のフラグを1(ON)または0(OFF)で表した、1つのビット列で表すことができます。 ビット列は各桁が0または1である2進数として表されるため、状態は対応する1つの10進数の整数値として管理することができます。
64個のフラグからなる状態を管理するビット列に対して、以下の種類の操作を行ってください。ただし、初期状態でビット列の全てのフラグはOFFになっているものとします。
test(i): i番目のフラグの状態がONの場合1、OFFの場合0を出力する
set(i): i番目のフラグをONにする
clear(i): i番目のフラグをOFFにする
flip(i): i番目のフラグを反転する
all: 全てのフラグがONになっている場合1、なっていない場合0を出力する
any: 何れかのフラグがONになっている場合1、なっていない場合0を出力する
none: 全てのフラグがOFFになっている場合1、なっていない場合0を出力する
count: ONになっているフラグの数を出力する val: 状態の整数値を出力する